Introduce the script for generating sources tarball without a code under a license which was not yet approved for Fedora or RHEL
Change the name of the sources archive, so the maintainer will encounter an error when uploading new sources which haven't undergo modification by this script
Cherry-picked from Fedora: 7f8a0e15a6
Related: #1971248
This commit is contained in:
parent
29b1e7172c
commit
dcf9624f00
46
generate-modified-sources.sh
Normal file
46
generate-modified-sources.sh
Normal file
@ -0,0 +1,46 @@
|
||||
#!/bin/bash
|
||||
|
||||
# This script downloads sources and modifies them
|
||||
|
||||
set -ex
|
||||
|
||||
NAME="mariadb"
|
||||
VERSION=$( rpmspec -q --srpm --qf '%{VERSION}' "${NAME}.spec" )
|
||||
# SOURCES_URL=$( spectool -s 0 "$NAME.spec" | cut -d ' ' -f 2 )
|
||||
SOURCES_URL="https://downloads.mariadb.org/interstitial/mariadb-${VERSION}/source/mariadb-${VERSION}.tar.gz"
|
||||
|
||||
OLD_ARCHIVE_NAME="${NAME}-${VERSION}"
|
||||
NEW_ARCHIVE_NAME="${NAME}-${VERSION}-downstream_modified"
|
||||
|
||||
# Retrieve the archive:
|
||||
|
||||
rm -rf "./${OLD_ARCHIVE_NAME}.tar.gz" "./${OLD_ARCHIVE_NAME}/" "./${NEW_ARCHIVE_NAME}.tar.gz" "./${NEW_ARCHIVE_NAME}/"
|
||||
wget "${SOURCES_URL}"
|
||||
|
||||
# Modify the archive:
|
||||
|
||||
# 1/ Change both the name of the archive and the name of the base directory inside of the archive
|
||||
# It will be necessary to change the name in the SPECfile in the %prep phase
|
||||
# This will prevent maintainer to rebase to a non-modified sources archive without changing the SPECfile
|
||||
|
||||
tar -xof "${OLD_ARCHIVE_NAME}.tar.gz"
|
||||
mv "${OLD_ARCHIVE_NAME}" "${NEW_ARCHIVE_NAME}"
|
||||
|
||||
# 2/ Remove the code licensed under the PerconaFT license
|
||||
# which was not yet reviewed as suitable for Fedora or RHEL.
|
||||
#
|
||||
# License file:
|
||||
# storage/tokudb/PerconaFT/PATENTS
|
||||
#
|
||||
# The whole storage engine, which requires code under this license
|
||||
# has to be removed before uploading sources to Fedora.
|
||||
|
||||
rm -r "${NEW_ARCHIVE_NAME}/storage/tokudb"
|
||||
|
||||
# Pack the extracted files back to the archive
|
||||
|
||||
tar -czf "${NEW_ARCHIVE_NAME}.tar.gz" "${NEW_ARCHIVE_NAME}"
|
||||
|
||||
# Remove the decompressed original used to create the archive
|
||||
|
||||
rm -r "./${NEW_ARCHIVE_NAME}/"
|
@ -168,7 +168,12 @@ Summary: A very fast and robust SQL database server
|
||||
URL: http://mariadb.org
|
||||
License: GPLv2 and LGPLv2
|
||||
|
||||
Source0: https://downloads.mariadb.org/interstitial/mariadb-%{version}/source/mariadb-%{version}.tar.gz
|
||||
# Original upstream sources archive URL
|
||||
# Source0: https://downloads.mariadb.org/interstitial/mariadb-%{version}/source/mariadb-%{version}.tar.gz
|
||||
# Non-existent URL containing correct archive name
|
||||
# The archive was created by executing the "generate-modified-sources.sh" script
|
||||
Source0: https://fedoraproject.org/mariadb-%{version}-downstream_modified.tar.gz
|
||||
|
||||
Source2: mysql_config_multilib.sh
|
||||
Source3: my.cnf.in
|
||||
Source6: README.mariadb-docs
|
||||
@ -746,7 +751,7 @@ sources.
|
||||
|
||||
|
||||
%prep
|
||||
%setup -q -n mariadb-%{version}
|
||||
%setup -q -n mariadb-%{version}-downstream_modified
|
||||
|
||||
# Remove JAR files that upstream puts into tarball
|
||||
find . -name "*.jar" -type f -exec rm --verbose -f {} \;
|
||||
|
Loading…
Reference in New Issue
Block a user