Accepting request 799061 from science
OBS-URL: https://build.opensuse.org/request/show/799061 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/vtk?expand=0&rev=46
This commit is contained in:
commit
bf3644f3ab
167
reproducible.patch
Normal file
167
reproducible.patch
Normal file
@ -0,0 +1,167 @@
|
||||
https://gitlab.kitware.com/vtk/vtk/merge_requests/5633
|
||||
https://gitlab.kitware.com/vtk/vtk/merge_requests/5634
|
||||
|
||||
Index: VTK-8.2.0/Utilities/Doxygen/doc_codematch.pl
|
||||
===================================================================
|
||||
--- VTK-8.2.0.orig/Utilities/Doxygen/doc_codematch.pl
|
||||
+++ VTK-8.2.0/Utilities/Doxygen/doc_codematch.pl
|
||||
@@ -249,7 +249,7 @@ foreach my $source (@files) {
|
||||
|
||||
my $preamble = " \@par " . $args{"label"} . ":\n";
|
||||
my $doc = $preamble .
|
||||
- " " . join(" ", keys %{$class2matches{$class}}) . "\n";
|
||||
+ " " . join(" ", sort keys %{$class2matches{$class}}) . "\n";
|
||||
|
||||
if ($block !~ s/($preamble.+?)(\s*\@par|\z)/$doc$2/gms) {
|
||||
$block .= "\n$doc";
|
||||
@@ -282,7 +282,7 @@ my $header;
|
||||
my (@summary, @credits);
|
||||
|
||||
push @summary,
|
||||
- " - $nb_files implementation file(s) returning " . scalar (keys %allmatches) . " word(s) for " . scalar (keys %allclasses) . " classe(es) on " . localtime(),
|
||||
+ " - $nb_files implementation file(s) returning " . scalar (keys %allmatches) . " word(s) for " . scalar (keys %allclasses) . " classe(es) on " . gmtime($ENV{SOURCE_DATE_EPOCH}||time),
|
||||
" - $nb_replaced_files file(s) updated";
|
||||
|
||||
push @credits,
|
||||
Index: VTK-8.2.0/Utilities/Doxygen/doc_index.pl
|
||||
===================================================================
|
||||
--- VTK-8.2.0.orig/Utilities/Doxygen/doc_index.pl
|
||||
+++ VTK-8.2.0/Utilities/Doxygen/doc_index.pl
|
||||
@@ -213,7 +213,7 @@ foreach my $source (@files) {
|
||||
}
|
||||
}
|
||||
|
||||
-my @words = keys %index;
|
||||
+my @words = sort keys %index;
|
||||
print " => ", scalar @words, " word(s) grabbed in $nb_files file(s) in ", time() - $intermediate_time, " s.\n";
|
||||
|
||||
# -------------------------------------------------------------------------
|
||||
@@ -243,7 +243,7 @@ print "Grouping...\n";
|
||||
|
||||
sub transfer_keys {
|
||||
my ($rfrom, $rto) = @_;
|
||||
- foreach my $key (keys %$rfrom) {
|
||||
+ foreach my $key (sort keys %$rfrom) {
|
||||
$rto->{$key} += $rfrom->{$key};
|
||||
}
|
||||
}
|
||||
@@ -350,7 +350,7 @@ foreach my $word (@words) {
|
||||
# with these extensions that were not found and build a list of similar
|
||||
# "words" by concatenating both.
|
||||
|
||||
- my @verbs = keys %verbs;
|
||||
+ my @verbs = sort keys %verbs;
|
||||
if (@verbs) {
|
||||
my %try = ("" => 1,
|
||||
"e" => 1,
|
||||
@@ -397,7 +397,7 @@ print " => $nb_grouped word(s) grouped.\
|
||||
|
||||
print "Normalizing...\n";
|
||||
|
||||
-@words = keys %index;
|
||||
+@words = sort keys %index;
|
||||
foreach my $word (@words) {
|
||||
my $lcw = lc $word;
|
||||
|
||||
@@ -413,7 +413,7 @@ foreach my $word (@words) {
|
||||
# Normalize group to lowercase
|
||||
|
||||
if (exists $group{$word}) {
|
||||
- foreach my $gword (keys %{$group{$word}}) {
|
||||
+ foreach my $gword (sort keys %{$group{$word}}) {
|
||||
my $lcgw = lc $gword;
|
||||
if ($gword ne uc($gword) && $gword ne $lcgw) {
|
||||
$group{$word}{$lcgw} = $group{$word}{$gword};
|
||||
@@ -441,7 +441,7 @@ my (@summary, @credits);
|
||||
|
||||
push @summary,
|
||||
" - $nb_files file(s) indexed by " . scalar @words . " word(s) on " .
|
||||
- localtime(),
|
||||
+ gmtime($ENV{SOURCE_DATE_EPOCH}||time),
|
||||
" - max limit is " . $args{"limit"} . " xref(s) per word";
|
||||
|
||||
push @credits,
|
||||
Index: VTK-8.2.0/Utilities/Doxygen/doc_class2example.pl
|
||||
===================================================================
|
||||
--- VTK-8.2.0.orig/Utilities/Doxygen/doc_class2example.pl
|
||||
+++ VTK-8.2.0/Utilities/Doxygen/doc_class2example.pl
|
||||
@@ -171,7 +171,7 @@ sub unique {
|
||||
foreach my $item (@$ref) {
|
||||
$uniques{$item}++;
|
||||
}
|
||||
- return keys %uniques;
|
||||
+ return sort keys %uniques;
|
||||
}
|
||||
|
||||
sub parse {
|
||||
@@ -506,7 +506,7 @@ my (@summary, @credits, @legend);
|
||||
|
||||
push @summary,
|
||||
" - " . scalar @words . " class(es) in " .
|
||||
- scalar @parsable . " file(s) from directories matching \@c " . $args{"dirmatch"} . " on " . localtime();
|
||||
+ scalar @parsable . " file(s) from directories matching \@c " . $args{"dirmatch"} . " on " . gmtime($ENV{SOURCE_DATE_EPOCH}||time);
|
||||
|
||||
push @summary,
|
||||
" - " . scalar @parsers . " parser(s) : [" . join(", ", @parsers) . "]";
|
||||
Index: VTK-8.2.0/Utilities/Doxygen/doc_contributors.pl
|
||||
===================================================================
|
||||
--- VTK-8.2.0.orig/Utilities/Doxygen/doc_contributors.pl
|
||||
+++ VTK-8.2.0/Utilities/Doxygen/doc_contributors.pl
|
||||
@@ -462,7 +462,7 @@ my $nb_removed = 0;
|
||||
|
||||
foreach my $signature (sort { (scalar keys %{$log_revision_by_signature_file{$b}}) <=> (scalar keys %{$log_revision_by_signature_file{$a}}) }
|
||||
keys %log_revision_by_signature_file) {
|
||||
- my @files = keys %{$log_revision_by_signature_file{$signature}};
|
||||
+ my @files = sort keys %{$log_revision_by_signature_file{$signature}};
|
||||
|
||||
if (scalar @files > $args{"massive"}) {
|
||||
print " >> Removed: (" . scalar @files . ")\n " .
|
||||
@@ -521,7 +521,7 @@ $intermediate_time = time();
|
||||
|
||||
# Browse each file, each revision and use contribution
|
||||
|
||||
-foreach my $file_name (keys %files_visited) {
|
||||
+foreach my $file_name (sort keys %files_visited) {
|
||||
|
||||
# Check if file is part of a class group
|
||||
|
||||
@@ -533,7 +533,7 @@ foreach my $file_name (keys %files_visit
|
||||
$classes{$class_name}{'creators'}{$log_by_file_revision{$file_name}{'1.1'}{'author'}} = 1;
|
||||
}
|
||||
|
||||
- foreach my $revision (keys %{$log_by_file_revision{$file_name}}) {
|
||||
+ foreach my $revision (sort keys %{$log_by_file_revision{$file_name}}) {
|
||||
|
||||
my $author = $log_by_file_revision{$file_name}{$revision}{'author'};
|
||||
|
||||
@@ -603,7 +603,7 @@ while (@classes_names) {
|
||||
# Find the class header name
|
||||
|
||||
my $source_header_name = undef;
|
||||
- foreach my $file_name (keys %{$classes{$class_name}{'files'}}) {
|
||||
+ foreach my $file_name (sort keys %{$classes{$class_name}{'files'}}) {
|
||||
if ($file_name =~ m/\.h$/) {
|
||||
$source_header_name = $file_name;
|
||||
last;
|
||||
@@ -682,7 +682,7 @@ while (@classes_names) {
|
||||
|
||||
if (exists $args{"cvsweb"}) {
|
||||
$doc .= "\n \@par CVS logs (CVSweb):\n";
|
||||
- foreach my $file (keys %{$classes{$class_name}{'files'}}) {
|
||||
+ foreach my $file (sort keys %{$classes{$class_name}{'files'}}) {
|
||||
my $shortname = get_short_relative_name($file, $args{"relativeto"});
|
||||
my ($base, $dir, $ext) = fileparse($shortname, '\..*');
|
||||
$doc .= ' - @htmlonly<A href="' . $args{"cvsweb"}
|
||||
@@ -769,10 +769,10 @@ my %contribution_by_author;
|
||||
|
||||
my %contribution_by_date;
|
||||
|
||||
-foreach my $contributor (keys %contribution_by_author_file) {
|
||||
+foreach my $contributor (sort keys %contribution_by_author_file) {
|
||||
|
||||
foreach my $file_name
|
||||
- (keys %{$contribution_by_author_file{$contributor}}) {
|
||||
+ (sort keys %{$contribution_by_author_file{$contributor}}) {
|
||||
$contribution_by_author{$contributor} +=
|
||||
$contribution_by_author_file{$contributor}{$file_name};
|
||||
}
|
23
vtk.changes
23
vtk.changes
@ -1,3 +1,26 @@
|
||||
-------------------------------------------------------------------
|
||||
Mon Apr 27 11:00:45 UTC 2020 - Atri Bhattacharya <badshah400@gmail.com>
|
||||
|
||||
- Fix serial builds broken due to disabling the building of
|
||||
examples; instead of commenting out sections of the specfile
|
||||
related to examples, use %bcond_with to disable building
|
||||
examples by default and the corresponding conditionals where
|
||||
appropriate.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sun Apr 26 04:21:40 UTC 2020 - Bernhard Wiedemann <bwiedemann@suse.com>
|
||||
|
||||
- add reproducible.patch to override build date and to sort entries
|
||||
(boo#1047218, boo#1041090)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Apr 24 08:28:02 UTC 2020 - Atri Bhattacharya <badshah400@gmail.com>
|
||||
|
||||
- Disable building examples to prevent vtkLocalExample.java
|
||||
randomly missing from vtk.jar (boo#1138295, see also upstream
|
||||
recommendation in
|
||||
https://gitlab.kitware.com/vtk/vtk/issues/17619).
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Mar 11 13:17:49 UTC 2020 - Stefan Brüns <stefan.bruens@rwth-aachen.de>
|
||||
|
||||
|
15
vtk.spec
15
vtk.spec
@ -18,6 +18,10 @@
|
||||
|
||||
%global flavor @BUILD_FLAVOR@%{nil}
|
||||
|
||||
# FIXME: ENABLE EXAMPLES BY DEFAULT WHEN VERSION 9.0 IS PACKAGED
|
||||
# [https://gitlab.kitware.com/vtk/vtk/issues/17619]
|
||||
%bcond_with examples
|
||||
|
||||
%if 0%{?sle_version} >= 150200
|
||||
%define DisOMPI1 ExclusiveArch: do_not_build
|
||||
%endif
|
||||
@ -110,6 +114,8 @@ Patch5: 0001-Add-libogg-to-IOMovie-target-link-libraries.patch
|
||||
Patch6: 0001-Make-code-calling-proj4-compatible-with-proj4-5.0-an.patch
|
||||
# PATCH-FIX-UPSTREAM -- Support for python3.8
|
||||
Patch7: python38.patch
|
||||
# PATCH-FIX-UPSTREAM https://gitlab.kitware.com/vtk/vtk/merge_requests/5633 + 5634
|
||||
Patch8: reproducible.patch
|
||||
BuildRequires: R-base-devel
|
||||
BuildRequires: chrpath
|
||||
BuildRequires: cmake >= 3.4
|
||||
@ -352,6 +358,7 @@ languages.
|
||||
%patch5 -p1
|
||||
%patch6 -p1
|
||||
%patch7 -p1
|
||||
%patch8 -p1
|
||||
|
||||
# Replace relative path ../../../../VTKData with %%{_datadir}/vtkdata
|
||||
# otherwise it will break on symlinks.
|
||||
@ -378,7 +385,7 @@ export CXXFLAGS="%{optflags}"
|
||||
# since JDK8.
|
||||
%cmake \
|
||||
-DBUILD_DOCUMENTATION:BOOL=ON \
|
||||
-DBUILD_EXAMPLES:BOOL=ON \
|
||||
-DBUILD_EXAMPLES:BOOL=%{?with_examples:ON}%{!?with_examples:OFF} \
|
||||
-DBUILD_TESTING:BOOL=OFF \
|
||||
-DCMAKE_NO_BUILTIN_CHRPATH:BOOL=ON \
|
||||
-DJava_JAVAH_EXECUTABLE:PATH=%{_bindir}/true \
|
||||
@ -430,6 +437,7 @@ find . -name \*.c -o -name \*.cxx -o -name \*.h -o -name \*.hxx -o -name \*.gif
|
||||
%install
|
||||
%cmake_install
|
||||
|
||||
%if %{with examples}
|
||||
# List of executable examples
|
||||
cat > examples.list << EOF
|
||||
AmbientSpheres
|
||||
@ -481,6 +489,8 @@ done
|
||||
perl -pi -e's,^,%{my_bindir}/,' examples.list
|
||||
%endif
|
||||
|
||||
%endif
|
||||
|
||||
%fdupes -s %{buildroot}
|
||||
|
||||
%check
|
||||
@ -493,6 +503,7 @@ export PYTHONPATH=$_PYTHON_MPI_PREFIX:$PYTHONPATH
|
||||
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:%{buildroot}%{my_libdir}
|
||||
export PYTHONPATH=$PYTHONPATH:%{buildroot}%{python3_sitearch}
|
||||
python3 -c "import vtk"
|
||||
find %{buildroot} . -name vtk.cpython-3*.pyc -delete # drop unreproducible time-based .pyc file
|
||||
|
||||
%post -n %{shlib} -p /sbin/ldconfig
|
||||
%postun -n %{shlib} -p /sbin/ldconfig
|
||||
@ -559,9 +570,11 @@ python3 -c "import vtk"
|
||||
%dir %{my_libdir}/qt5/plugins/designer/
|
||||
%{my_libdir}/qt5/plugins/designer/libQVTKWidgetPlugin.so
|
||||
|
||||
%if %{with examples}
|
||||
%if "%{flavor}" == ""
|
||||
%files examples -f examples.list
|
||||
%license Copyright.txt
|
||||
%endif
|
||||
%endif
|
||||
|
||||
%changelog
|
||||
|
Loading…
Reference in New Issue
Block a user