Compare commits
No commits in common. "imports/c8-beta/gdbm-1.18-1.el8" and "c8s" have entirely different histories.
imports/c8
...
c8s
@ -1 +0,0 @@
|
||||
0f1056ab3beb1bf09dad06f8083f2c79716a5b1b SOURCES/gdbm-1.18.tar.gz
|
6
.gitignore
vendored
6
.gitignore
vendored
@ -1 +1,5 @@
|
||||
SOURCES/gdbm-1.18.tar.gz
|
||||
/gdbm-1.14.tar.gz
|
||||
/gdbm-1.14.1.tar.gz
|
||||
/gdbm-1.16.tar.gz
|
||||
/gdbm-1.17.tar.gz
|
||||
/gdbm-1.18.tar.gz
|
||||
|
11
STAGE2-gdbm
Normal file
11
STAGE2-gdbm
Normal file
@ -0,0 +1,11 @@
|
||||
# awful hack to prevent running aclocal ... FIXME
|
||||
(cd $SRC/gdbm-*/m4 && [ -f libtool.m4.orig ] && rm -f libtool.m4 && mv libtool.m4.orig libtool.m4) || echo ""
|
||||
|
||||
mcd $BUILDDIR/gdbm
|
||||
|
||||
echo "Current in: $PWD"
|
||||
|
||||
$SRC/gdbm-*/configure $TCONFIGARGS
|
||||
|
||||
make $J
|
||||
make $J install
|
7
gating.yaml
Normal file
7
gating.yaml
Normal file
@ -0,0 +1,7 @@
|
||||
--- !Policy
|
||||
product_versions:
|
||||
- rhel-8
|
||||
decision_context: osci_compose_gate
|
||||
rules:
|
||||
- !PassingTestCaseRule {test_case_name: osci.brew-build.tier0.functional}
|
||||
- !PassingTestCaseRule {test_case_name: baseos-ci.brew-build.tier1.functional}
|
14
gdbm-1.10-fedora.patch
Normal file
14
gdbm-1.10-fedora.patch
Normal file
@ -0,0 +1,14 @@
|
||||
diff -up gdbm-1.10/NOTE-WARNING.fedora gdbm-1.10/NOTE-WARNING
|
||||
--- gdbm-1.10/NOTE-WARNING.fedora 2011-11-14 17:43:41.267566501 +0100
|
||||
+++ gdbm-1.10/NOTE-WARNING 2011-11-14 17:47:53.312549265 +0100
|
||||
@@ -12,8 +12,8 @@ systems where it is not the default. `L
|
||||
when a system uses 64bit file offsets. Gdbm has, of course, supported `large
|
||||
files' on systems where it was the default for a very long time.
|
||||
|
||||
-On some systems, such as Solaris, this functionality is not enabled by
|
||||
-default. Gdbm will now enable it. THIS MEANS THAT GDBM 1.9 MAY NOT BE
|
||||
+On some systems this functionality is not enabled by default. To enable it,
|
||||
+build rpm with option --with=largefile. THIS MEANS THAT GDBM 1.9 MAY NOT BE
|
||||
ABLE TO ACCESS DATABASES CREATED BY PREVIOUS VERIONS ON THE SAME SYSTEM.
|
||||
|
||||
Running the `configure' script with the `--disable-largefile' flag should
|
24
gdbm-1.18-backward-compatibility.patch
Normal file
24
gdbm-1.18-backward-compatibility.patch
Normal file
@ -0,0 +1,24 @@
|
||||
Upstream backport: 00ba17479ff31c6825f0e6f28b965f11525e83f6
|
||||
Fix problem with loading old format of databases exports
|
||||
|
||||
diff -ur gdbm-1.18/src/gdbmopen.c gdbm-patch/src/gdbmopen.c
|
||||
--- gdbm-1.18/src/gdbmopen.c 2018-08-03 10:46:39.000000000 +0200
|
||||
+++ gdbm-patch/src/gdbmopen.c 2022-07-01 08:56:08.000000000 +0200
|
||||
@@ -168,9 +168,14 @@
|
||||
return GDBM_BLOCK_SIZE_ERROR;
|
||||
}
|
||||
|
||||
- if (hdr->next_block != st->st_size)
|
||||
- /* FIXME: Should return GDBM_NEED_RECOVERY instead? */
|
||||
- return GDBM_BAD_HEADER;
|
||||
+ /* Technically speaking, the condition below should read
|
||||
+ hdr->next_block != st->st_size
|
||||
+ However, gdbm versions prior to commit 4e819c98 could leave
|
||||
+ hdr->next_block pointing beyond current end of file. To ensure
|
||||
+ backward compatibility with these versions, the condition has been
|
||||
+ slackened to this: */
|
||||
+ if (hdr->next_block < st->st_size)
|
||||
+ return GDBM_BAD_HEADER;
|
||||
|
||||
/* Make sure dir and dir + dir_size fall within the file boundary */
|
||||
if (!(hdr->dir > 0
|
@ -3,21 +3,16 @@
|
||||
Summary: A GNU set of database routines which use extensible hashing
|
||||
Name: gdbm
|
||||
Version: 1.18
|
||||
Release: 1%{?dist}
|
||||
Release: 2%{?dist}
|
||||
Epoch: 1
|
||||
License: GPLv3+
|
||||
URL: http://www.gnu.org/software/gdbm/
|
||||
|
||||
Source: http://ftp.gnu.org/gnu/gdbm/gdbm-%{version}.tar.gz
|
||||
# See https://bugzilla.redhat.com/show_bug.cgi?id=4457
|
||||
# Upstream bug http://puszcza.gnu.org.ua/bugs/?func=detailitem&item_id=151
|
||||
# Fixed in http://cvs.gnu.org.ua/viewvc/gdbm/gdbm/src/gdbmopen.c?r1=1.12&r2=1.13
|
||||
# - version 1.10
|
||||
#Patch0: gdbm-1.10-zeroheaders.patch
|
||||
# NOTE-WARNING file doesn't contain distro dependent largefile note now
|
||||
#Patch1: gdbm-1.10-fedora.patch
|
||||
|
||||
Patch2: gdbm-1.17-coverity-fixes.patch
|
||||
Patch1: gdbm-1.17-coverity-fixes.patch
|
||||
# Backport of upstream commit: 00ba17479ff31c6825f0e6f28b965f11525e83f6
|
||||
Patch2: gdbm-1.18-backward-compatibility.patch
|
||||
|
||||
BuildRequires: gcc
|
||||
BuildRequires: libtool
|
||||
@ -58,6 +53,7 @@ gdbm database library. You'll also need to install the gdbm package.
|
||||
|
||||
%prep
|
||||
%setup -q
|
||||
%patch1 -p1
|
||||
%patch2 -p1
|
||||
|
||||
%build
|
||||
@ -125,6 +121,11 @@ fi
|
||||
%{_mandir}/man3/*
|
||||
|
||||
%changelog
|
||||
* Fri Jul 01 2022 <fjanus@redhat.com> - 1.18-2
|
||||
- Add backward compatibility patch
|
||||
- Resolves: #2097704
|
||||
- Backport from upstream commit: 00ba17479ff31c6825f0e6f28b965f11525e83f6
|
||||
|
||||
* Mon Sep 03 2018 mskalick@redhat.com - 1:1.18-1
|
||||
- Rebase to latest release 1.18
|
||||
- Fix issues found by coverity
|
1
sources
Normal file
1
sources
Normal file
@ -0,0 +1 @@
|
||||
SHA512 (gdbm-1.18.tar.gz) = 57c7e5dc52464e97ad955e28d49fdb3557d8e3bdf280f7d3cee69539e4878f055db17cb9dd591f82fadb8fa5041a5a56d8a571d34f6e115470a3a82537f872a8
|
18
tests/tests.yml
Normal file
18
tests/tests.yml
Normal file
@ -0,0 +1,18 @@
|
||||
---
|
||||
# Tests that run in classic and container contexts
|
||||
- hosts: localhost
|
||||
roles:
|
||||
- role: standard-test-beakerlib
|
||||
tags:
|
||||
- classic
|
||||
- container
|
||||
tests:
|
||||
- testsuite
|
||||
required_packages:
|
||||
- gcc # testsuite needs this package
|
||||
- gettext # testsuite needs this package
|
||||
- libtool # testsuite needs this package
|
||||
- make # testsuite needs this package
|
||||
- readline-devel # testsuite needs this package
|
||||
- rpm-build # testsuite needs this package
|
||||
- wget # rlFetchSrcForInstalled needs this package
|
63
tests/testsuite/Makefile
Normal file
63
tests/testsuite/Makefile
Normal file
@ -0,0 +1,63 @@
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Makefile of testsuite
|
||||
# Description: runs test suite from src package
|
||||
# Author: Vaclav Danek <vdanek@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2017 Red Hat, Inc.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation, either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# 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, see http://www.gnu.org/licenses/.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
export TEST=testsuite
|
||||
export TESTVERSION=1.0
|
||||
|
||||
BUILT_FILES=
|
||||
|
||||
FILES=$(METADATA) runtest.sh Makefile PURPOSE
|
||||
|
||||
.PHONY: all install download clean
|
||||
|
||||
run: $(FILES) build
|
||||
./runtest.sh
|
||||
|
||||
build: $(BUILT_FILES)
|
||||
test -x runtest.sh || chmod a+x runtest.sh
|
||||
|
||||
clean:
|
||||
rm -f *~ $(BUILT_FILES)
|
||||
|
||||
|
||||
include /usr/share/rhts/lib/rhts-make.include
|
||||
|
||||
$(METADATA): Makefile
|
||||
@echo "Owner: Vaclav Danek <vdanek@redhat.com>" > $(METADATA)
|
||||
@echo "Name: $(TEST)" >> $(METADATA)
|
||||
@echo "TestVersion: $(TESTVERSION)" >> $(METADATA)
|
||||
@echo "Path: $(TEST_DIR)" >> $(METADATA)
|
||||
@echo "Description: runs test suite from src package" >> $(METADATA)
|
||||
@echo "Type: Sanity" >> $(METADATA)
|
||||
@echo "TestTime: 5m" >> $(METADATA)
|
||||
@echo "RunFor: gdbm" >> $(METADATA)
|
||||
@echo "Requires: gdbm libtool readline-devel" >> $(METADATA)
|
||||
@echo "Priority: Normal" >> $(METADATA)
|
||||
@echo "License: GPLv2+" >> $(METADATA)
|
||||
@echo "Confidential: no" >> $(METADATA)
|
||||
@echo "Destructive: no" >> $(METADATA)
|
||||
@echo "Releases: -RHEL4 -RHELClient5 -RHELServer5 -RHEL6" >> $(METADATA)
|
||||
|
||||
rhts-lint $(METADATA)
|
3
tests/testsuite/PURPOSE
Normal file
3
tests/testsuite/PURPOSE
Normal file
@ -0,0 +1,3 @@
|
||||
PURPOSE of testsuite
|
||||
Description: runs test suite from src package
|
||||
Author: Vaclav Danek <vdanek@redhat.com>
|
74
tests/testsuite/runtest.sh
Normal file
74
tests/testsuite/runtest.sh
Normal file
@ -0,0 +1,74 @@
|
||||
#!/bin/bash
|
||||
# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# runtest.sh of testsuite
|
||||
# Description: runs test suite from src package
|
||||
# Author: Vaclav Danek <vdanek@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2017 Red Hat, Inc.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation, either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# 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, see http://www.gnu.org/licenses/.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
# Include Beaker environment
|
||||
[ -e /usr/bin/rhts-environment.sh ] && . /usr/bin/rhts-environment.sh
|
||||
. /usr/share/beakerlib/beakerlib.sh || exit 1
|
||||
|
||||
PACKAGE="gdbm"
|
||||
|
||||
rlJournalStart
|
||||
rlPhaseStartSetup
|
||||
rlAssertRpm $PACKAGE
|
||||
rlRun "TmpDir=\$(mktemp -d)" 0 "Creating tmp directory"
|
||||
rlRun "pushd $TmpDir"
|
||||
# fetch srpm
|
||||
rlRun "rlFetchSrcForInstalled $PACKAGE || yumdownloader --enablerepo='*' --source $PACKAGE" \
|
||||
0 "Fetching the source rpm"
|
||||
package=`rpm -q --qf "%{SOURCERPM}" $PACKAGE`
|
||||
installlog=`mktemp /tmp/install.log.XXXXXX`
|
||||
rlLog "Using $installlog as installation log"
|
||||
rlRun "rpm -ivh $TmpDir/$package &> $installlog"
|
||||
BUILDDIR="$HOME/rpmbuild/BUILD"
|
||||
SPECDIR="$HOME/rpmbuild/SPECS"
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartTest
|
||||
rlRun "cd /root/rpmbuild"
|
||||
rlRun "rpmbuild -bp $SPECDIR/$PACKAGE.spec"
|
||||
rlRun "cd $BUILDDIR"
|
||||
rlRun "cd gdbm-*"
|
||||
if rlGetPrimaryArch == 'ppc64le'; then
|
||||
rlRun "./configure --disable-static --enable-libgdbm-compat --build=ppc64le-redhat-linux-gnu --host=ppc64le-redhat-linux-gnu"
|
||||
else
|
||||
rlRun "./configure --disable-static --enable-libgdbm-compat"
|
||||
fi
|
||||
rlRun "make check"
|
||||
rlRun "ls | grep -v tests | xargs rm -rf"
|
||||
rlRun "cd tests"
|
||||
rlRun "rm -f testsuite.log"
|
||||
rlRun "./testsuite"
|
||||
rlAssertGrep "All .* tests were successful." testsuite.log
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartCleanup
|
||||
rlRun "popd"
|
||||
rlRun "rm -r $TmpDir" 0 "Removing tmp directory"
|
||||
rlRun "rm -rf /root/rpmbuild"
|
||||
rlPhaseEnd
|
||||
rlJournalPrintText
|
||||
rlJournalEnd
|
Loading…
Reference in New Issue
Block a user