Browse Source

xscreensaver version update 5.44

Signed-off-by: guibuilder_pel7x64builder0 <guibuilder@powerel.org>
master
guibuilder_pel7x64builder0 4 years ago
parent
commit
684b232395
  1. 32
      SOURCES/xscreensaver-5.35-webcollage-default-nonet.patch
  2. 126
      SOURCES/xscreensaver-5.44-0001-barcode-glsnake-sanitize-the-names-of-modes.patch
  3. 24
      SOURCES/xscreensaver-5.44-0002-Patch-to-compile-driver-test-xdpms.patch
  4. 71
      SOURCES/xscreensaver-5.44-0101-free_gibson-fix-order-of-freeing-memory.patch
  5. 42
      SOURCES/xscreensaver-5.44-0102-ya_rand_init-avoid-signed-integer-overflow-by-with-r.patch
  6. 199
      SPECS/xscreensaver.spec

32
SOURCES/xscreensaver-5.35-webcollage-default-nonet.patch

@ -1,6 +1,19 @@ @@ -1,6 +1,19 @@
--- xscreensaver-5.35/hacks/config/webcollage.xml.nonet 2016-04-08 11:15:38.000000000 +0900
+++ xscreensaver-5.35/hacks/config/webcollage.xml 2016-05-26 23:47:38.000000000 +0900
@@ -28,8 +28,8 @@
From b04424419b281e608bac2a600bf7aab0c65b164a Mon Sep 17 00:00:00 2001
From: XScreenSaver owners <xscreensaver-owner@fedoraproject.org>
Date: Tue, 24 Mar 2020 13:29:14 +0900
Subject: [PATCH] # Change webcollage not to access to net # Also see bug
472061

---
hacks/config/webcollage.xml | 7 ++++++-
hacks/webcollage.man | 5 +++++
2 files changed, 11 insertions(+), 1 deletion(-)

diff --git a/hacks/config/webcollage.xml b/hacks/config/webcollage.xml
index c26ea98..da312fa 100644
--- a/hacks/config/webcollage.xml
+++ b/hacks/config/webcollage.xml
@@ -30,8 +30,8 @@
<string id="filter" _label="Per-image filter program" arg="-filter %"/>
<string id="filter2" _label="Overall filter program" arg="-filter2 %"/>
<file id="dictionary" _label="Dictionary file" arg="-dictionary %"/>
@ -10,7 +23,7 @@ @@ -10,7 +23,7 @@
<xscreensaver-updater />
@@ -49,6 +49,11 @@
@@ -51,6 +51,11 @@ Please act accordingly.
See also https://www.jwz.org/webcollage/
@ -22,9 +35,11 @@ @@ -22,9 +35,11 @@
Written by Jamie Zawinski; 1999.
</_description>
</screensaver>
--- xscreensaver-5.26/hacks/webcollage.man.nonet 2009-10-14 06:12:31.000000000 +0900
+++ xscreensaver-5.26/hacks/webcollage.man 2013-12-10 13:40:38.139050305 +0900
@@ -178,6 +178,11 @@
diff --git a/hacks/webcollage.man b/hacks/webcollage.man
index 82bf5d7..7860d2e 100644
--- a/hacks/webcollage.man
+++ b/hacks/webcollage.man
@@ -178,6 +178,11 @@ the given directory.
.TP 8
.B \-fps
Display the current frame rate and CPU load (MacOS only).
@ -36,3 +51,6 @@ @@ -36,3 +51,6 @@
.SH ENVIRONMENT
.PP
.TP 8
--
2.25.2


126
SOURCES/xscreensaver-5.44-0001-barcode-glsnake-sanitize-the-names-of-modes.patch

@ -0,0 +1,126 @@ @@ -0,0 +1,126 @@
From e38ff62ebac195bedbb0eb95778d01c6af44989d Mon Sep 17 00:00:00 2001
From: XScreenSaver owners <xscreensaver-owner@fedoraproject.org>
Date: Tue, 24 Mar 2020 13:24:47 +0900
Subject: [PATCH] barcode / glsnake: sanitize the names of modes

---
hacks/barcode.c | 10 ----------
hacks/glx/glsnake.c | 12 ++++++------
2 files changed, 6 insertions(+), 16 deletions(-)

diff --git a/hacks/barcode.c b/hacks/barcode.c
index 1f56013..5c3a6bd 100644
--- a/hacks/barcode.c
+++ b/hacks/barcode.c
@@ -121,8 +121,6 @@ static const char *words[] =
"belly",
"bliss",
"bogosity",
- "boobies",
- "boobs",
"booty",
"bread",
"brogrammers",
@@ -137,7 +135,6 @@ static const char *words[] =
"chocolate",
"chupacabra",
"CLONE",
- "cock",
"congress",
"constriction",
"contrition",
@@ -178,7 +175,6 @@ static const char *words[] =
"fear",
"fever",
"filth",
- "flatulence",
"fluff",
"fnord",
"followers",
@@ -196,9 +192,7 @@ static const char *words[] =
"happiness",
"hate",
"helplessness",
- "hemorrhoid",
"hermaphrodite",
- "heroin",
"heroine",
"hope",
"hysteria",
@@ -280,7 +274,6 @@ static const char *words[] =
"punishment",
"punk rock",
"punk",
- "pussy",
"quagmire",
"quarantine",
"quartz",
@@ -289,7 +282,6 @@ static const char *words[] =
"rage",
"readout",
"reality",
- "rectum",
"reject",
"rejection",
"respect",
@@ -355,8 +347,6 @@ static const char *words[] =
"venom",
"verifiability",
"very fine people",
- "viagra",
- "vibrator",
"victim",
"vignette",
"villainy",
diff --git a/hacks/glx/glsnake.c b/hacks/glx/glsnake.c
index 8efc681..125df90 100644
--- a/hacks/glx/glsnake.c
+++ b/hacks/glx/glsnake.c
@@ -539,7 +539,7 @@ static const struct model_s model[] = {
PIN, ZERO, RIGHT, RIGHT, ZERO, PIN, PIN, ZERO, PIN, PIN, ZERO,
RIGHT, ZERO }
},
- { "k's turd",
+ { "caterpillar",
{ RIGHT, RIGHT, PIN, RIGHT, LEFT, RIGHT, PIN, RIGHT, LEFT,
RIGHT, PIN, RIGHT, LEFT, RIGHT, PIN, RIGHT, LEFT, RIGHT, PIN,
RIGHT, LEFT, RIGHT, PIN, ZERO }
@@ -564,22 +564,22 @@ static const struct model_s model[] = {
ZERO, PIN, ZERO, ZERO, ZERO, ZERO, PIN, ZERO, ZERO, ZERO, ZERO,
ZERO, ZERO, ZERO }
},
- { "kissy box",
+ { "ribbon",
{ PIN, ZERO, ZERO, ZERO, PIN, ZERO, ZERO, ZERO, ZERO, ZERO,
ZERO, PIN, ZERO, ZERO, ZERO, ZERO, PIN, ZERO, ZERO, ZERO, ZERO,
ZERO, PIN, ZERO }
},
- { "erect penis", /* thanks benno */
+ { "shuffle board", /* thanks benno */
{ PIN, ZERO, PIN, PIN, ZERO, ZERO, PIN, ZERO, ZERO, ZERO, PIN,
PIN, ZERO, ZERO, ZERO, RIGHT, ZERO, ZERO, ZERO, ZERO, ZERO, ZERO,
ZERO, ZERO }
},
- { "flaccid penis",
+ { "anchor",
{ PIN, ZERO, PIN, PIN, ZERO, ZERO, PIN, ZERO, ZERO, ZERO, PIN,
PIN, ZERO, ZERO, ZERO, RIGHT, PIN, ZERO, ZERO, ZERO, ZERO, ZERO,
ZERO, ZERO }
},
- { "vagina",
+ { "engagement ring",
{ RIGHT, ZERO, ZERO, ZERO, RIGHT, ZERO, ZERO, PIN, ZERO, ZERO,
LEFT, ZERO, ZERO, ZERO, LEFT, ZERO, LEFT, PIN, LEFT, PIN, RIGHT,
PIN, RIGHT, ZERO }
@@ -999,7 +999,7 @@ static const struct model_s model[] = {
{ "Parrot",
{ ZERO, ZERO, ZERO, ZERO, RIGHT, RIGHT, ZERO, LEFT, PIN, RIGHT, ZERO, RIGHT, ZERO, RIGHT, ZERO, RIGHT, PIN, LEFT, ZERO, RIGHT, LEFT, ZERO, PIN, ZERO }
},
- { "Penis",
+ { "Shuttle",
{ PIN, PIN, RIGHT, ZERO, PIN, PIN, ZERO, PIN, ZERO, ZERO, RIGHT, PIN, LEFT, ZERO, ZERO, PIN, ZERO, PIN, PIN, ZERO, LEFT, PIN, PIN, ZERO }
},
{ "PictureComingSoon",
--
2.25.2

24
SOURCES/xscreensaver-5.44-0002-Patch-to-compile-driver-test-xdpms.patch

@ -0,0 +1,24 @@ @@ -0,0 +1,24 @@
From 2ab857c449470d9de45f7b1b8114eda3d9899dc6 Mon Sep 17 00:00:00 2001
From: XScreenSaver owners <xscreensaver-owner@fedoraproject.org>
Date: Tue, 24 Mar 2020 13:37:59 +0900
Subject: [PATCH] Patch to compile driver/test-xdpms

---
driver/test-xdpms.c | 1 -
1 file changed, 1 deletion(-)

diff --git a/driver/test-xdpms.c b/driver/test-xdpms.c
index b86aed3..1a48c3d 100644
--- a/driver/test-xdpms.c
+++ b/driver/test-xdpms.c
@@ -29,7 +29,6 @@
#include <X11/Xproto.h>
#include <X11/extensions/dpms.h>
-#include <X11/extensions/dpmsstr.h>
extern Bool DPMSQueryExtension (Display *dpy, int *event_ret, int *error_ret);
extern Bool DPMSCapable (Display *dpy);
--
2.25.2

71
SOURCES/xscreensaver-5.44-0101-free_gibson-fix-order-of-freeing-memory.patch

@ -0,0 +1,71 @@ @@ -0,0 +1,71 @@
From 77b8fc885e582a21c0f3f00f9120c948d4fa424b Mon Sep 17 00:00:00 2001
From: Mamoru TASAKA <mtasaka@fedoraproject.org>
Date: Tue, 24 Mar 2020 14:26:43 +0900
Subject: [PATCH] free_gibson: fix order of freeing memory

gcc10 -fsanitize=address detects use-after-free on free_gibsonn:
=================================================================
==49579==ERROR: AddressSanitizer: heap-use-after-free on address 0x61d000021c8c at pc 0x00000040da99 bp 0x7ffdb9dfea00 sp 0x7ffdb9dfe9f0
READ of size 4 at 0x61d000021c8c thread T0
#0 0x40da98 in free_gibson ../../../hacks/glx/gibson.c:1323
#1 0x4256af in xlockmore_free ../../hacks/xlockmore.c:724
#2 0x40aaeb in run_screenhack_table ../../hacks/screenhack.c:614
#3 0x40aaeb in main ../../hacks/screenhack.c:991
#4 0x7f6aab9b81a2 in __libc_start_main (/lib64/libc.so.6+0x271a2)
#5 0x40c09d in _start (/home/mtasaka/rpmbuild/fedora-specific/xscreensaver/master/xscreensaver-5.44/x86_64-pc-linux-gnu/hacks/glx/gibson+0x40c09d)

0x61d000021c8c is located 12 bytes inside of 2304-byte region [0x61d000021c80,0x61d000022580)
freed by thread T0 here:
#0 0x7f6aacc4a357 in __interceptor_free (/lib64/libasan.so.6+0xb0357)
#1 0x40d21a in free_gibson ../../../hacks/glx/gibson.c:1309

previously allocated by thread T0 here:
#0 0x7f6aacc4a887 in __interceptor_calloc (/lib64/libasan.so.6+0xb0887)
#1 0x41321c in init_gibson ../../../hacks/glx/gibson.c:1028

This patch fixes order of freeing memory.
---
hacks/glx/gibson.c | 17 ++++++++++-------
1 file changed, 10 insertions(+), 7 deletions(-)

diff --git a/hacks/glx/gibson.c b/hacks/glx/gibson.c
index 8f99040..05b16a7 100644
--- a/hacks/glx/gibson.c
+++ b/hacks/glx/gibson.c
@@ -1306,7 +1306,6 @@ free_gibson (ModeInfo *mi)
if (!bp->glx_context) return;
glXMakeCurrent(MI_DISPLAY(mi), MI_WINDOW(mi), *bp->glx_context);
- if (bp->towers) free (bp->towers);
if (bp->rot) free_rotator (bp->rot);
if (bp->rot2) free_rotator (bp->rot2);
if (glIsList(bp->ground_dlist)) glDeleteLists(bp->ground_dlist, 1);
@@ -1316,15 +1315,19 @@ free_gibson (ModeInfo *mi)
if (bp->text[i].font_data) free_texture_font (bp->text[i].font_data);
if (bp->text[i].text) free (bp->text[i].text);
}
- for (i = 0; i < bp->ntowers; i++)
+ if (bp->towers)
{
- for (j = 0; j < countof(bp->towers[i].fg_dlists); j++)
+ for (i = 0; i < bp->ntowers; i++)
{
- if (glIsList(bp->towers[i].fg_dlists[j]))
- glDeleteLists(bp->towers[i].fg_dlists[j], 1);
- if (glIsList(bp->towers[i].bg_dlists[j]))
- glDeleteLists(bp->towers[i].bg_dlists[j], 1);
+ for (j = 0; j < countof(bp->towers[i].fg_dlists); j++)
+ {
+ if (glIsList(bp->towers[i].fg_dlists[j]))
+ glDeleteLists(bp->towers[i].fg_dlists[j], 1);
+ if (glIsList(bp->towers[i].bg_dlists[j]))
+ glDeleteLists(bp->towers[i].bg_dlists[j], 1);
+ }
}
+ free (bp->towers);
}
}
--
2.25.2

42
SOURCES/xscreensaver-5.44-0102-ya_rand_init-avoid-signed-integer-overflow-by-with-r.patch

@ -0,0 +1,42 @@ @@ -0,0 +1,42 @@
From 561ba41a83a8c9f4e66eb27f87e6b37e89858dcb Mon Sep 17 00:00:00 2001
From: Mamoru TASAKA <mtasaka@fedoraproject.org>
Date: Wed, 15 Apr 2020 23:15:40 +0900
Subject: [PATCH] ya_rand_init: avoid signed integer overflow by with recent
pid_max value

Recent Linux system (like Fedora) has kernel.pid_max value as 2^22
(= 4194304), instead of old 65536 (=2^16) value. A quick reference is:
https://unix.stackexchange.com/questions/231719/why-is-the-maximum-pid-in-a-64-bit-linux-system-222/231724

With this value, on ya_rand_init(), multiplying the value returned by
getpid() by 1003 (which is larger than 2^9) can get larger than 2^31,
which causes signed overflow like:

../../utils/yarandom.c:123:21: runtime error: signed integer overflow: 3774303 * 1003 cannot be represented in type 'int'

as detected by gcc10 -sanitize=undefined.

This patch avoids signed overflow by casting values with unsigned int.
---
utils/yarandom.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/utils/yarandom.c b/utils/yarandom.c
index f450735..0f51cb6 100644
--- a/utils/yarandom.c
+++ b/utils/yarandom.c
@@ -118,9 +118,9 @@ ya_rand_init(unsigned int seed)
#define ROT(X,N) (((X)<<(N)) | ((X)>>((sizeof(unsigned int)*8)-(N))))
seed = (999U * (unsigned int) tp.tv_sec);
seed = ROT (seed, 11);
- seed += (1001 * tp.tv_usec);
+ seed += (1001 * (unsigned int) tp.tv_usec);
seed = ROT (seed, 7);
- seed += (1003 * getpid());
+ seed += (1003 * (unsigned int) getpid());
seed = ROT (seed, 13);
}
--
2.25.2

199
SPECS/xscreensaver.spec

@ -1,29 +1,44 @@ @@ -1,29 +1,44 @@
%define modular_conf 1
%define split_getimage 1
%global use_clang_as_cc 0
%global use_clang_analyze 0
%global use_cppcheck 0
%global use_gcc_strict_sanitize 0
%define name xscreensaver
%define mainversion 5.44
%define beta_ver %{nil}
%define modular_conf 1
%define split_getimage 1
%define fedora_rel 1
%global use_clang_as_cc 0
%global use_clang_analyze 0
%global use_cppcheck 0
%global use_gcc_strict_sanitize 0
%global use_gcc_trap_on_sanitize 0
%define default_text %{_sysconfdir}/powerel-release
%define default_URL http://planet.powerel.org/rss20.xml
%define pam_ver 0.80-7
%define autoconf_ver 2.53
%define update_po 1
%define build_tests 0
%undefine _changelog_trimtime


Name: xscreensaver
Version: 5.43
Release: 1%{?dist}
%global use_gcc_analyzer 0
%undefine extrarel
%global flagrel %{nil}
%if 0%{?use_cppcheck} >= 1
%global flagrel %{flagrel}.cppcheck
%endif
%if 0%{?use_gcc_strict_sanitize} >= 1
%global flagrel %{flagrel}.san
%endif

# EPEL6
%{!?__git:%define __git git}

%define default_text %{_sysconfdir}/system-release
%define default_URL http://planet.fedoraproject.org/rss20.xml
%define pam_ver 0.80-7
%define autoconf_ver 2.53
%define update_po 1
%define build_tests 0
%global support_setcap 0
%undefine _changelog_trimtime

Summary: X screen saver and locker
Name: %{name}
Version: %{mainversion}
Release: %{fedora_rel}%{flagrel}%{?dist}%{?extrarel}
Epoch: 1
License: MIT
Summary: X screen saver and locker
Group: Amusements/Graphics
URL: http://www.jwz.org/xscreensaver/
Source0: http://www.jwz.org/xscreensaver/xscreensaver-%{version}.tar.gz
Buildroot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
Source0: http://www.jwz.org/xscreensaver/xscreensaver-%{mainversion}%{?beta_ver}.tar.gz
%if %{modular_conf}
Source10: update-xscreensaver-hacks
%endif
@ -33,35 +48,25 @@ Source12: xscreensaver-autostart.desktop @@ -33,35 +48,25 @@ Source12: xscreensaver-autostart.desktop
## Patches
##
# bug 129335
%global PATCH1_desc \
# sanitize the names of modes in barcode
Patch1: xscreensaver-5.00b5-sanitize-hacks.patch
Patch1: xscreensaver-5.44-0001-barcode-glsnake-sanitize-the-names-of-modes.patch
## Patches already sent to the upsteam
## Patches which must be discussed with upstream
#
%global PATCH21_desc \
# Change webcollage not to access to net \
# Also see bug 472061
# See bug 472061
Patch21: xscreensaver-5.35-webcollage-default-nonet.patch
#
%global PATCH51_desc \
# driver/test-passwd tty segfaults
Patch51: xscreensaver-5.12-test-passwd-segv-tty.patch
%global PATCH52_desc \
# patch to compile driver/test-xdpms
Patch52: xscreensaver-5.12-tests-miscfix.patch
# open new window for man when using gnome-terminal
Patch61: xscreensaver-5.42-0061-open-new-window-for-man-when-using-gnome-terminal.patch
# Patch to compile driver/test-xdpms
Patch52: xscreensaver-5.44-0002-Patch-to-compile-driver-test-xdpms.patch
#
# reset_strip: kill gcc7 -Wint-in-bool-context
Patch3603: xscreensaver-5.36-0003-reset_strip-kill-gcc7-Wint-in-bool-context.patch
# init_crystal: kill gcc7 -Wint-in-bool-context
Patch3604: xscreensaver-5.36-0004-init_crystal-kill-gcc7-Wint-in-bool-context.patch
# misc: kill gcc warn_unused_result warnings
Patch3607: xscreensaver-5.36-0007-misc-kill-gcc-warn_unused_result-warnings.patch
# fontglide.c: forbit C++ style comment
#Patch4201: xscreensaver-5.42-0001-fontglide.c-forbit-C-style-comment.patch
#
# open new window for man when using gnome-terminal
Patch4261: xscreensaver-5.42-0061-open-new-window-for-man-when-using-gnome-terminal.patch
# free_gibson: fix order of freeing memory
Patch4401: xscreensaver-5.44-0101-free_gibson-fix-order-of-freeing-memory.patch
# ya_rand_init: avoid signed integer overflow by with recent pid_max value
Patch4402: xscreensaver-5.44-0102-ya_rand_init-avoid-signed-integer-overflow-by-with-r.patch
#
# Debugging patch
# Not apply by default
# XIO: print C backtrace on error
@ -74,7 +79,6 @@ Requires: xscreensaver-gl-extras = %{epoch}:%{version}-%{release} @@ -74,7 +79,6 @@ Requires: xscreensaver-gl-extras = %{epoch}:%{version}-%{release}

%package base
Summary: A minimal installation of xscreensaver
Group: Amusements/Graphics

%if 0%{?use_clang_analyze} >= 1
BuildRequires: clang-analyzer
@ -120,7 +124,10 @@ BuildRequires: libpng-devel @@ -120,7 +124,10 @@ BuildRequires: libpng-devel
# Write explicitly
BuildRequires: libXrandr-devel
BuildRequires: libXt-devel
%if 0%{?fedora} <= 30
# libXxf86misc removed from F-31
BuildRequires: libXxf86misc-devel
%endif
BuildRequires: libXxf86vm-devel
# XScreenSaver 5.31
BuildRequires: libXft-devel
@ -131,6 +138,9 @@ BuildRequires: pkgconfig(gdk-pixbuf-2.0) @@ -131,6 +138,9 @@ BuildRequires: pkgconfig(gdk-pixbuf-2.0)
BuildRequires: pkgconfig(gdk-pixbuf-xlib-2.0)
BuildRequires: libjpeg-devel
BuildRequires: libglade2-devel
%if 0%{?support_setcap} >= 1
BuildRequires: pkgconfig(libcap)
%endif
%if 0%{?fedora}
BuildRequires: %{default_text}
%endif
@ -138,7 +148,6 @@ BuildRequires: %{default_text} @@ -138,7 +148,6 @@ BuildRequires: %{default_text}
# https://fedoraproject.org/wiki/Changes/Build_Root_Without_Perl
#BuildRequires: perl-interpreter
#BuildRequires: perl-generators
BuildRequires: perl
# For --with-login-manager option
%if 0%{?fedora} >= 14
# Use pseudo symlink, not writing BR: gdm
@ -159,7 +168,6 @@ Obsoletes: xscreeensaver-tests < %{epoch}:%{version}-%{release} @@ -159,7 +168,6 @@ Obsoletes: xscreeensaver-tests < %{epoch}:%{version}-%{release}

%package extras-base
Summary: A base package for screensavers
Group: Amusements/Graphics
%if 0%{?fedora} < 19
Requires: %{name}-base = %{epoch}:%{version}-%{release}
%endif
@ -168,7 +176,6 @@ Requires: xorg-x11-resutils @@ -168,7 +176,6 @@ Requires: xorg-x11-resutils

%package extras
Summary: An enhanced set of screensavers
Group: Amusements/Graphics
%if 0%{?fedora} >= 19
# Does not available on EPEL7
BuildRequires: desktop-backgrounds-basic
@ -182,12 +189,10 @@ Requires: %{name}-extras-base = %{epoch}:%{version}-%{release} @@ -182,12 +189,10 @@ Requires: %{name}-extras-base = %{epoch}:%{version}-%{release}

%package gl-base
Summary: A base package for screensavers that require OpenGL
Group: Amusements/Graphics
Requires: %{name}-base = %{epoch}:%{version}-%{release}

%package gl-extras
Summary: An enhanced set of screensavers that require OpenGL
Group: Amusements/Graphics
Provides: xscreensaver-gl = %{epoch}:%{version}-%{release}
Obsoletes: xscreensaver-gl <= 1:5.00
BuildRequires: libGL-devel
@ -203,26 +208,21 @@ Requires: %{name}-extras-base = %{epoch}:%{version}-%{release} @@ -203,26 +208,21 @@ Requires: %{name}-extras-base = %{epoch}:%{version}-%{release}

%package extras-gss
Summary: Desktop files of extras for other screensaver
Group: Amusements/Graphics
Requires: %{name}-extras = %{epoch}:%{version}-%{release}

%package gl-extras-gss
Summary: Desktop files of gl-extras for other screensaver
Group: Amusements/Graphics
Requires: %{name}-gl-extras = %{epoch}:%{version}-%{release}

%package tests
Summary: Test programs related to XScreenSaver
Group: Development/Debuggers
Requires: %{name}-base = %{epoch}:%{version}-%{release}

%package clang-analyze
Summary: Clang analyze result log
Group: Development/Debuggers

%package cppcheck
Summary: cppcheck result log
Group: Development/Debuggers


%description
@ -301,7 +301,7 @@ This package contains cppcheck result of XScreenSaver. @@ -301,7 +301,7 @@ This package contains cppcheck result of XScreenSaver.


%prep
%setup -q -n %{name}-%{version}
%setup -q -n %{name}-%{mainversion}%{?beta_ver}

cat > .gitignore <<EOF
configure
@ -324,22 +324,15 @@ find . -name \*.c -exec chmod ugo-x {} \; @@ -324,22 +324,15 @@ find . -name \*.c -exec chmod ugo-x {} \;
%__git add .
%__git commit -m "base" -q

%patch1 -p1
%__git commit -m "%PATCH1_desc" -a
%patch21 -p1
%__git commit -m "%PATCH21_desc" -a

%patch51 -p1
%__git commit -m "%PATCH51_desc" -a
%patch52 -p1
%__git commit -m "%PATCH52_desc" -a

%__cat %PATCH61 | %__git am
%__cat %PATCH1 | %__git am
%__cat %PATCH21 | %__git am
%__cat %PATCH52 | %__git am

%__cat %PATCH3603 | %__git am
%__cat %PATCH3604 | %__git am
#%%__cat %PATCH3607 | %__git am
%__cat %PATCH4201 | %__git am
%__cat %PATCH4261 | %__git am
%__cat %PATCH4401 | %__git am
%__cat %PATCH4402 | %__git am

#%%__cat %PATCH13501 | %%__git am

@ -402,9 +395,7 @@ change_option driver/XScreenSaver.ad.in \ @@ -402,9 +395,7 @@ change_option driver/XScreenSaver.ad.in \
splash=False \
ignoreUninstalledPrograms=True \
textProgram=fortune\ -s \
%if 0%{?fedora} >= 12
textURL=%{default_URL}
%endif
%__git commit -m "%PATCH_desc" -a

# peepers: 5.39: too scary (mtasaka)
@ -468,10 +459,8 @@ fi @@ -468,10 +459,8 @@ fi

%global PATCH_desc \
# Fix for desktop-file-utils 0.14+
%if 0%{?fedora} >= 9
sed -i.icon -e 's|xscreensaver\.xpm|xscreensaver|' \
driver/screensaver-properties.desktop.in
%endif
%__git commit -m "%PATCH_desc" -a || echo "Nothing changed"

%global PATCH_desc \
@ -552,6 +541,14 @@ export CC="$CC -fsanitize-undefined-trap-on-error" @@ -552,6 +541,14 @@ export CC="$CC -fsanitize-undefined-trap-on-error"
export CFLAGS="$(echo $CFLAGS | sed -e 's|-specs=[^ \t][^ \t]*||')"
export LDFLAGS="$(echo $LDFLAGS %__global_ldflags | sed -e 's|-specs=[^ \t][^ \t]*||g')"
%endif
%if 0%{?use_gcc_analyzer}
if [ "x${CC}" == x ] ; then
export CC=gcc
fi
export CC="${CC} -fanalyzer"
# make build log look clear
%global _smp_mflags -j1
%endif

CONFIG_OPTS="--prefix=%{_prefix} --with-pam --without-shadow --without-kerberos"
CONFIG_OPTS="$CONFIG_OPTS --without-setuid-hacks"
@ -580,6 +577,10 @@ CONFIG_OPTS="$CONFIG_OPTS --enable-pam-check-account-type" @@ -580,6 +577,10 @@ CONFIG_OPTS="$CONFIG_OPTS --enable-pam-check-account-type"
# xscreensaver 5.30
CONFIG_OPTS="$CONFIG_OPTS --with-record-animation"

%if 0%{?support_setcap}
CONFIG_OPTS="$CONFIG_OPTS --with-setcap-hacks"
%endif

# This is flaky:
# CONFIG_OPTS="$CONFIG_OPTS --with-login-manager"

@ -616,6 +617,8 @@ fi @@ -616,6 +617,8 @@ fi
# Workaround end

%if 0%{?use_clang_analyze} < 1
# Workaround for ppc64 build failure
make -C ../hacks/images -j1
for dir in \
utils driver ../hacks/images hacks hacks/glx po
do
@ -721,7 +724,7 @@ list_files() { @@ -721,7 +724,7 @@ list_files() {

# Generate three lists of files for the three packages.
#
dd=%{_builddir}/%{name}-%{version}
dd=%{_builddir}/%{name}-%{mainversion}%{?beta_ver}

# In case rpm -bi --short-circuit is tried multiple times:
rm -f $dd/*.files
@ -730,6 +733,12 @@ rm -f $dd/*.files @@ -730,6 +733,12 @@ rm -f $dd/*.files
( cd hacks/glx ; list_files install ) > $dd/gl-extras.files
( cd driver ; list_files install ) > $dd/base.files

%if 0%{?support_setcap} >= 1
sed -i $dd/gl-extras.files \
-e '\@sonar$@s|^|%%attr(0755,root,root) %%caps(cap_net_raw=p)|' \
%{nil}
%endif

# Move xscreensaver-gettext-foo, xscreensaver-text to extras-base
# (bug 668427)
%if %{split_getimage}
@ -1026,6 +1035,50 @@ exit 0 @@ -1026,6 +1035,50 @@ exit 0
%endif

%changelog
* Thu Apr 16 2020 Mamoru TASAKA <mtasaka@fedoraproject.org> - 1:5.44-1
- ya_rand_init: avoid signed integer overflow by with recent pid_max value

* Tue Mar 24 2020 Mamoru TASAKA <mtasaka@fedoraproject.org> - 1:5.44-0
- Update to 5.44
- free_gibson: fix order of freeing memory

* Sat Feb 8 2020 Mamoru TASAKA <mtasaka@fedoraproject.org> - 1:5.43-5
- More fix for issues detected by gcc10 sanitizer
- send_ping(sonar-icmp.c): keep alignment for struct timeval
- gravitywell: restict the index accessing to colors[] buffer to the valid range

* Fri Feb 7 2020 Mamoru TASAKA <mtasaka@fedoraproject.org> - 1:5.43-3
- make_job (driver/subprocs.c): check is the pointer gets to the last of string buffer correctly
(error detected by gcc10 -sanitize=address)

* Tue Jan 28 2020 Mamoru TASAKA <mtasaka@fedoraproject.org> - 1:5.43-2.1
- F-32: mass rebuild

* Tue Aug 27 2019 Mamoru TASAKA <mtasaka@fedoraproject.org> - 1:5.43-2
- glhanoi: fix malloc size shortage (bug 1745794)

* Sat Jul 27 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1:5.43-1.1
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild

* Wed Jul 10 2019 Mamoru TASAKA <mtasaka@fedoraproject.org> - 1:5.43-1
- Update to 5.43

* Tue Jun 25 2019 Mamoru TASAKA <mtasaka@fedoraproject.org> - 1:5.42-2
- xjack: avoid freeing string literal when window is small (bug 1723461)

* Thu Jun 20 2019 Adam Jackson <ajax@redhat.com> - 1:5.42-1.3
- Drop BuildRequires: pkgconfig(xxf86misc), X servers haven't implemented that
extension in 10+ years.

* Fri Jun 14 2019 Mamoru TASAKA <mtasaka@fedoraproject.org> - 1:5.42-2
- sonar: support setcap (disabled for now)

* Sun Feb 03 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1:5.42-1.2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild

* Mon Jan 14 2019 Björn Esser <besser82@fedoraproject.org> - 1:5.42-1.1
- Rebuilt for libcrypt.so.2 (#1666033)

* Sun Dec 30 2018 Mamoru TASAKA <mtasaka@fedoraproject.org> - 1:5.42-1
- Update to 5.42
- fontglide.c: forbit C++ style comment

Loading…
Cancel
Save