mirror of
https://github.com/MariaDB/server.git
synced 2025-07-10 04:22:00 +03:00
With this change, there will be new files "INFO_SRC" and "INFO_BIN", which describe the source and the binaries. They will be contained in all packages: - in "tar.gz" and derived packages, in "docs/", - in RPMs, in "/usr/share/doc/packages/MySQL-server". "INFO_SRC" is also part of a source tarball. It gives the version as exact as possible, preferably by calling "bzr version-info" on the source tree. If that is not possible, it just contains the three level version number. "INFO_BIN" contains some info when and where the binaries were built, the options given to the compiler, and the flags controlling the included features. The tests (test "mysql" in the main suite) are extended to verify the existence of both "INFO_SRC" and "INFO_BIN", as well as some of the expected contents.
57 lines
1.9 KiB
Plaintext
57 lines
1.9 KiB
Plaintext
#
|
|
# Testing files that were built to be packaged, both for existence and for contents
|
|
#
|
|
|
|
#
|
|
# Bug #42969: Create MANIFEST files
|
|
#
|
|
# Use a Perl script to verify that files "docs/INFO_BIN" and "docs/INFO_SRC" do exist
|
|
# and have the expected contents.
|
|
|
|
--perl
|
|
print "\nChecking 'INFO_SRC' and 'INFO_BIN'\n";
|
|
$dir_docs = $ENV{'MYSQL_LIBDIR'};
|
|
if($dir_docs =~ m|/usr/|) {
|
|
# RPM package
|
|
$dir_docs =~ s|/lib|/share/doc|;
|
|
if(-d "$dir_docs/packages/MySQL-server") {
|
|
# SuSE
|
|
$dir_docs = "$dir_docs/packages/MySQL-server";
|
|
} else {
|
|
# RedHat: version number in directory name
|
|
$dir_docs = glob "$dir_docs/MySQL-server*";
|
|
}
|
|
} else {
|
|
# tar.gz package, Windows, or developer work (in BZR)
|
|
$dir_docs =~ s|/lib||;
|
|
if(-d "$dir_docs/docs") {
|
|
$dir_docs = "$dir_docs/docs"; # package
|
|
} else {
|
|
$dir_docs = "$dir_docs/Docs"; # development tree
|
|
}
|
|
}
|
|
$found_version = "No line 'MySQL source #.#.#'";
|
|
$found_revision = "No line 'revision-id: .....'";
|
|
open(I_SRC,"<","$dir_docs/INFO_SRC") or print "Cannot open 'INFO_SRC' in '$dir_docs'\n";
|
|
while(defined ($line = <I_SRC>)) {
|
|
if ($line =~ m|^MySQL source \d\.\d\.\d+|) {$found_version = "Found MySQL version number";}
|
|
if ($line =~ m|^revision-id: .*@.*-2\d{13}-\w+$|) {$found_revision = "Found BZR revision id";}
|
|
}
|
|
close I_SRC;
|
|
print "INFO_SRC: $found_version / $found_revision\n";
|
|
$found_compiler = "No line about compiler information";
|
|
$found_features = "No line 'Feature flags'";
|
|
open(I_BIN,"<","$dir_docs/INFO_BIN") or print "Cannot open 'INFO_BIN' in '$dir_docs'\n";
|
|
while(defined ($line = <I_BIN>)) {
|
|
# "generator" on Windows, "flags" on Unix:
|
|
if (($line =~ m| Compiler / generator used: |) ||
|
|
($line =~ m| Compiler flags used |)) {$found_compiler = "Found 'Compiler ... used' line";}
|
|
if ($line =~ m| Feature flags used:|) {$found_features = "Found 'Feature flags' line";}
|
|
}
|
|
close I_BIN;
|
|
print "INFO_BIN: $found_compiler / $found_features\n";
|
|
EOF
|
|
|
|
--echo
|
|
--echo End of tests
|