Compare commits
No commits in common. "c8s" and "c10s" have entirely different histories.
1
.fmf/version
Normal file
1
.fmf/version
Normal file
@ -0,0 +1 @@
|
||||
1
|
||||
11
.gitignore
vendored
11
.gitignore
vendored
@ -1,2 +1,11 @@
|
||||
SOURCES/yaml-0.1.7.tar.gz
|
||||
yaml-0.1.3.tar.gz
|
||||
/yaml-0.1.4.tar.gz
|
||||
/yaml-0.1.5.tar.gz
|
||||
/yaml-0.1.6.tar.gz
|
||||
/yaml-0.1.7.tar.gz
|
||||
/yaml-0.2.1.tar.gz
|
||||
/libyaml-0.2.2.tar.gz
|
||||
/dist-0.2.3.tar.gz
|
||||
/dist-0.2.4.tar.gz
|
||||
/0.2.5.tar.gz
|
||||
/yaml-0.2.5.tar.gz
|
||||
|
||||
5
gating.yaml
Normal file
5
gating.yaml
Normal file
@ -0,0 +1,5 @@
|
||||
--- !Policy
|
||||
|
||||
decision_context: osci_compose_gate
|
||||
rules:
|
||||
- !PassingTestCaseRule {test_case_name: osci.brew-build.tier0.functional}
|
||||
196
libyaml.spec
196
libyaml.spec
@ -1,17 +1,31 @@
|
||||
%define tarballname yaml
|
||||
%global with_mingw 0
|
||||
|
||||
#====================================================================#
|
||||
%if 0%{?fedora}
|
||||
%global with_mingw 1
|
||||
%endif
|
||||
|
||||
Name: libyaml
|
||||
Version: 0.1.7
|
||||
Release: 5%{?dist}
|
||||
Version: 0.2.5
|
||||
Release: 16%{?dist}
|
||||
Summary: YAML 1.1 parser and emitter written in C
|
||||
|
||||
Group: System Environment/Libraries
|
||||
License: MIT
|
||||
URL: http://pyyaml.org/
|
||||
Source0: http://pyyaml.org/download/libyaml/%{tarballname}-%{version}.tar.gz
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
|
||||
URL: https://github.com/yaml/libyaml
|
||||
Source0: https://github.com/yaml/libyaml/releases/download/%{version}/yaml-%{version}.tar.gz
|
||||
|
||||
BuildRequires: autoconf
|
||||
BuildRequires: automake
|
||||
BuildRequires: doxygen
|
||||
BuildRequires: gcc
|
||||
BuildRequires: libtool
|
||||
BuildRequires: make
|
||||
|
||||
%if %{with_mingw}
|
||||
BuildRequires: mingw32-filesystem >= 95
|
||||
BuildRequires: mingw32-gcc-c++
|
||||
BuildRequires: mingw64-filesystem >= 95
|
||||
BuildRequires: mingw64-gcc-c++
|
||||
%endif
|
||||
|
||||
%description
|
||||
YAML is a data serialization format designed for human readability and
|
||||
@ -21,27 +35,63 @@ emitter written in C.
|
||||
|
||||
%package devel
|
||||
Summary: Development files for LibYAML applications
|
||||
Group: Development/Libraries
|
||||
Requires: libyaml = %{version}-%{release}, pkgconfig
|
||||
Requires: libyaml%{?_isa} = %{version}-%{release}, pkgconfig
|
||||
|
||||
# docs contain files generated by doxygen which are licensed as follows:
|
||||
# dynsections.js and menu.js are GPL-2.0-or-later
|
||||
# jquery.js is MIT
|
||||
License: GPL-2.0-or-later AND MIT
|
||||
|
||||
%description devel
|
||||
The %{name}-devel package contains libraries and header files for
|
||||
developing applications that use LibYAML.
|
||||
|
||||
%if %{with_mingw}
|
||||
%package -n mingw32-libyaml
|
||||
Summary: MinGW YAML 1.1 parser and emitter written in C
|
||||
BuildArch: noarch
|
||||
|
||||
%description -n mingw32-libyaml
|
||||
YAML is a data serialization format designed for human readability and
|
||||
interaction with scripting languages. LibYAML is a YAML parser and
|
||||
emitter written in C.
|
||||
|
||||
%package -n mingw64-libyaml
|
||||
Summary: MinGW YAML 1.1 parser and emitter written in C
|
||||
BuildArch: noarch
|
||||
|
||||
%description -n mingw64-libyaml
|
||||
YAML is a data serialization format designed for human readability and
|
||||
interaction with scripting languages. LibYAML is a YAML parser and
|
||||
emitter written in C.
|
||||
%endif
|
||||
|
||||
%prep
|
||||
%setup -q -n %{tarballname}-%{version}
|
||||
%setup -q -n yaml-%{version}
|
||||
|
||||
|
||||
%build
|
||||
%define _configure ../configure
|
||||
mkdir build
|
||||
pushd build
|
||||
%configure
|
||||
make %{?_smp_mflags}
|
||||
%make_build all html
|
||||
popd
|
||||
|
||||
%if %{with_mingw}
|
||||
%mingw_configure
|
||||
%mingw_make_build
|
||||
%endif
|
||||
|
||||
%install
|
||||
rm -rf %{buildroot}
|
||||
make DESTDIR=%{buildroot} INSTALL="install -p" install
|
||||
pushd build
|
||||
%make_install
|
||||
popd
|
||||
|
||||
%if %{with_mingw}
|
||||
%mingw_make_install
|
||||
%endif
|
||||
|
||||
rm -f %{buildroot}%{_libdir}/*.{la,a}
|
||||
|
||||
soname=$(readelf -d %{buildroot}%{_libdir}/libyaml.so | awk '$2 == "(SONAME)" {print $NF}' | tr -d '[]')
|
||||
@ -50,15 +100,16 @@ echo "INPUT($soname)" > %{buildroot}%{_libdir}/libyaml.so
|
||||
|
||||
|
||||
%check
|
||||
pushd build
|
||||
make check
|
||||
|
||||
popd
|
||||
|
||||
%ldconfig_scriptlets
|
||||
|
||||
|
||||
%files
|
||||
%license LICENSE
|
||||
%doc README
|
||||
%license License
|
||||
%doc ReadMe.md
|
||||
%{_libdir}/%{name}*.so.*
|
||||
|
||||
|
||||
@ -69,7 +120,118 @@ make check
|
||||
%{_includedir}/yaml.h
|
||||
|
||||
|
||||
%if %{with_mingw}
|
||||
%files -n mingw32-libyaml
|
||||
%license License
|
||||
%{mingw32_bindir}/libyaml-0-2.dll
|
||||
%{mingw32_includedir}/yaml.h
|
||||
%{mingw32_libdir}/libyaml.a
|
||||
%{mingw32_libdir}/libyaml.dll.a
|
||||
%{mingw32_libdir}/pkgconfig/yaml-0.1.pc
|
||||
|
||||
%files -n mingw64-libyaml
|
||||
%license License
|
||||
%{mingw64_bindir}/libyaml-0-2.dll
|
||||
%{mingw64_includedir}/yaml.h
|
||||
%{mingw64_libdir}/libyaml.a
|
||||
%{mingw64_libdir}/libyaml.dll.a
|
||||
%{mingw64_libdir}/pkgconfig/yaml-0.1.pc
|
||||
%endif
|
||||
|
||||
|
||||
%changelog
|
||||
* Tue Oct 29 2024 Troy Dawson <tdawson@redhat.com> - 0.2.5-16
|
||||
- Bump release for October 2024 mass rebuild:
|
||||
Resolves: RHEL-64018
|
||||
|
||||
* Mon Jun 24 2024 Troy Dawson <tdawson@redhat.com> - 0.2.5-15
|
||||
- Bump release for June 2024 mass rebuild
|
||||
|
||||
* Thu Jan 25 2024 Fedora Release Engineering <releng@fedoraproject.org> - 0.2.5-14
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
|
||||
|
||||
* Sun Jan 21 2024 Fedora Release Engineering <releng@fedoraproject.org> - 0.2.5-13
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
|
||||
|
||||
* Wed Jul 26 2023 Marc-André Lureau <marcandre.lureau@redhat.com> - 0.2.5-12
|
||||
- Add MinGW packages.
|
||||
|
||||
* Thu Jul 20 2023 Fedora Release Engineering <releng@fedoraproject.org> - 0.2.5-11
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
|
||||
|
||||
* Wed May 17 2023 Karolina Surma <ksurma@redhat.com> - 0.2.5-10
|
||||
- Review the license tag according to the SPDX standard, declare the docs license
|
||||
|
||||
* Thu Jan 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 0.2.5-9
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
|
||||
|
||||
* Thu Jul 21 2022 Fedora Release Engineering <releng@fedoraproject.org> - 0.2.5-8
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
|
||||
|
||||
* Thu Jan 20 2022 Fedora Release Engineering <releng@fedoraproject.org> - 0.2.5-7
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
|
||||
|
||||
* Thu Jul 22 2021 Fedora Release Engineering <releng@fedoraproject.org> - 0.2.5-6
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
|
||||
|
||||
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 0.2.5-5
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
|
||||
|
||||
* Tue Dec 1 2020 John Eckersberg <jeckersb@redhat.com> - 0.2.5-4
|
||||
- Add BuildRequires for make
|
||||
(re: https://fedoraproject.org/wiki/Changes/Remove_make_from_BuildRoot)
|
||||
|
||||
* Tue Jul 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 0.2.5-3
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
|
||||
|
||||
* Mon Jul 13 2020 Tom Stellard <tstellar@redhat.com> - 0.2.5-2
|
||||
- Use make macros
|
||||
- https://fedoraproject.org/wiki/Changes/UseMakeBuildInstallMacro
|
||||
|
||||
* Tue Jun 2 2020 John Eckersberg <eck@redhat.com> - 0.2.5-1
|
||||
- New upstream release (rhbz#1842769)
|
||||
|
||||
* Sun Apr 19 2020 John Eckersberg <eck@redhat.com> - 0.2.4-1
|
||||
- New upstream release (rhbz#1825622)
|
||||
- Fixes document end before directive (rhbz#1824226)
|
||||
|
||||
* Mon Apr 13 2020 John Eckersberg <eck@redhat.com> - 0.2.3-1
|
||||
- New upstream release (rhbz#1823108)
|
||||
|
||||
* Wed Jan 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 0.2.2-3
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
|
||||
|
||||
* Thu Jul 25 2019 Fedora Release Engineering <releng@fedoraproject.org> - 0.2.2-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
|
||||
|
||||
* Tue Mar 26 2019 John Eckersberg <eck@redhat.com> - 0.2.2-1
|
||||
- New upstream release (rhbz#1692750)
|
||||
|
||||
* Tue Feb 5 2019 John Eckersberg <eck@redhat.com> - 0.2.1-5
|
||||
- Add patch: Revert removing of open_ended after top level plain scalar (rhbz#1672670)
|
||||
|
||||
* Tue Feb 5 2019 John Eckersberg <eck@redhat.com> - 0.2.1-4
|
||||
- Add patch: Don't emit document-end marker at the end of stream (rhbz#1672670)
|
||||
|
||||
* Fri Feb 01 2019 Fedora Release Engineering <releng@fedoraproject.org> - 0.2.1-3
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
|
||||
|
||||
* Tue Aug 7 2018 Jens Petersen <petersen@redhat.com> - 0.2.1-2
|
||||
- rebuild against fixed binutils to fix missing symbols (#1613350)
|
||||
|
||||
* Mon Jul 16 2018 John Eckersberg <eck@redhat.com> - 0.2.1-1
|
||||
- New upstream release 0.2.1 (rhbz#1598611)
|
||||
|
||||
* Mon Jul 16 2018 John Eckersberg <eck@redhat.com> - 0.1.7-8
|
||||
- Add BuildRequires for gcc
|
||||
See: https://fedoraproject.org/wiki/Changes/Remove_GCC_from_BuildRoot
|
||||
|
||||
* Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 0.1.7-7
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
|
||||
|
||||
* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 0.1.7-6
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
|
||||
|
||||
* Sat Feb 03 2018 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 0.1.7-5
|
||||
- Switch to %%ldconfig_scriptlets
|
||||
|
||||
|
||||
2
sources
2
sources
@ -1 +1 @@
|
||||
SHA512 (yaml-0.1.7.tar.gz) = 1ee5007dd10db137b5ee80f8117f07390ec04af98d087a5f5475dd2b38d87c699b79ab1676e6c7bfa263323fcdf8edd69fada2b0b7f9c57bef4e46cd65f1e975
|
||||
SHA512 (yaml-0.2.5.tar.gz) = dadd7d8e0d88b5ebab005e5d521d56d541580198aa497370966b98c904586e642a1cd4f3881094eb57624f218d50db77417bbfd0ffdce50340f011e35e8c4c02
|
||||
|
||||
12
tests/smoke/main.fmf
Normal file
12
tests/smoke/main.fmf
Normal file
@ -0,0 +1,12 @@
|
||||
summary: Run examples
|
||||
description: |
|
||||
Runs simple examples which already caused problems while fixing CVE.
|
||||
run-parser is taken from the source
|
||||
component:
|
||||
- libyaml
|
||||
test: ./runtest.sh
|
||||
framework: beakerlib
|
||||
require:
|
||||
- libyaml-devel
|
||||
- gcc
|
||||
duration: 5m
|
||||
4
tests/smoke/regression_1033990.yaml
Normal file
4
tests/smoke/regression_1033990.yaml
Normal file
@ -0,0 +1,4 @@
|
||||
%YAML 1.1
|
||||
---
|
||||
{Backoff: 1}
|
||||
...
|
||||
6
tests/smoke/regression_1063866.yaml
Normal file
6
tests/smoke/regression_1063866.yaml
Normal file
@ -0,0 +1,6 @@
|
||||
%YAML 1.1
|
||||
--- # Indented Block
|
||||
name: John Smith
|
||||
age: 33
|
||||
--- # Inline Block
|
||||
{name: John Smith, age: 33}
|
||||
63
tests/smoke/run-parser.c
Normal file
63
tests/smoke/run-parser.c
Normal file
@ -0,0 +1,63 @@
|
||||
#include <yaml.h>
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h>
|
||||
|
||||
#ifdef NDEBUG
|
||||
#undef NDEBUG
|
||||
#endif
|
||||
#include <assert.h>
|
||||
|
||||
int
|
||||
main(int argc, char *argv[])
|
||||
{
|
||||
int number;
|
||||
|
||||
if (argc < 2) {
|
||||
printf("Usage: %s file1.yaml ...\n", argv[0]);
|
||||
return 0;
|
||||
}
|
||||
|
||||
for (number = 1; number < argc; number ++)
|
||||
{
|
||||
FILE *file;
|
||||
yaml_parser_t parser;
|
||||
yaml_event_t event;
|
||||
int done = 0;
|
||||
int count = 0;
|
||||
int error = 0;
|
||||
|
||||
printf("[%d] Parsing '%s': ", number, argv[number]);
|
||||
fflush(stdout);
|
||||
|
||||
file = fopen(argv[number], "rb");
|
||||
assert(file);
|
||||
|
||||
assert(yaml_parser_initialize(&parser));
|
||||
|
||||
yaml_parser_set_input_file(&parser, file);
|
||||
|
||||
while (!done)
|
||||
{
|
||||
if (!yaml_parser_parse(&parser, &event)) {
|
||||
error = 1;
|
||||
break;
|
||||
}
|
||||
|
||||
done = (event.type == YAML_STREAM_END_EVENT);
|
||||
|
||||
yaml_event_delete(&event);
|
||||
|
||||
count ++;
|
||||
}
|
||||
|
||||
yaml_parser_delete(&parser);
|
||||
|
||||
assert(!fclose(file));
|
||||
|
||||
printf("%s (%d events)\n", (error ? "FAILURE" : "SUCCESS"), count);
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
39
tests/smoke/runtest.sh
Executable file
39
tests/smoke/runtest.sh
Executable file
@ -0,0 +1,39 @@
|
||||
#!/bin/bash
|
||||
# vim: dict=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# runtest.sh of /CoreOS/libyaml/Sanity/smoke
|
||||
# Description: What the test does
|
||||
# Author: Lukas Zachar <lzachar@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2014 Red Hat, Inc.
|
||||
#
|
||||
# This copyrighted material is made available to anyone wishing
|
||||
# to use, modify, copy, or redistribute it subject to the terms
|
||||
# and conditions of the GNU General Public License version 2.
|
||||
#
|
||||
# This program is distributed in the hope that it will be
|
||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
# PURPOSE. See the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public
|
||||
# License along with this program; if not, write to the Free
|
||||
# Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
|
||||
# Boston, MA 02110-1301, USA.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
# Include Beaker environment
|
||||
. /usr/share/beakerlib/beakerlib.sh || exit 1
|
||||
|
||||
rlJournalStart
|
||||
rlPhaseStartTest
|
||||
rlRun "gcc -O2 -Wall -W -g run-parser.c -lyaml -o run-parser"
|
||||
rlRun "./run-parser regression_1063866.yaml"
|
||||
rlRun "./run-parser regression_1033990.yaml"
|
||||
rlPhaseEnd
|
||||
rlJournalPrintText
|
||||
rlJournalEnd
|
||||
Loading…
Reference in New Issue
Block a user