summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPascal Jäger <pascal.jaeger@leimstift.de>2022-12-07 17:18:40 +0100
committerSam James <sam@gentoo.org>2022-12-07 21:29:22 +0000
commit71ae0b143a55fd45d4fd56cff13438cdbc602089 (patch)
tree3a92098191f4f736faff6535a8bbd7fd17b9fe75
parentapp-editors/bluefish: revbump, fix build for clang16 (diff)
downloadgentoo-71ae0b143a55fd45d4fd56cff13438cdbc602089.tar.gz
gentoo-71ae0b143a55fd45d4fd56cff13438cdbc602089.tar.bz2
gentoo-71ae0b143a55fd45d4fd56cff13438cdbc602089.zip
x11-misc/xlockmore: version bump to 5.71, patch
- version bump to 5.71 - patch to fix build on clang16 - add filter-lto Closes: https://bugs.gentoo.org/880909 Closes: https://bugs.gentoo.org/864761 Signed-off-by: Pascal Jäger <pascal.jaeger@leimstift.de> Closes: https://github.com/gentoo/gentoo/pull/28590 Signed-off-by: Sam James <sam@gentoo.org>
-rw-r--r--x11-misc/xlockmore/Manifest1
-rw-r--r--x11-misc/xlockmore/files/xlockmore-5.71-fix-build-for-clang16.patch28
-rw-r--r--x11-misc/xlockmore/xlockmore-5.71.ebuild125
3 files changed, 154 insertions, 0 deletions
diff --git a/x11-misc/xlockmore/Manifest b/x11-misc/xlockmore/Manifest
index 319f4fb8911b..1c67c5eba60b 100644
--- a/x11-misc/xlockmore/Manifest
+++ b/x11-misc/xlockmore/Manifest
@@ -1,2 +1,3 @@
DIST xlockmore-5.66.tar.xz 1995064 BLAKE2B 630643f2968a5015dd35b4e1a24cd3d4e7ef9d6d75b0916416e93ab28bacb5a161983b036d9042a5686b2f17ba493ad510e2df9f7443488f9b988662e644ec7a SHA512 d0a4665e23b32cc3370703e55396cd5c9659f836aa13a1737dd709632746cf9221acd66a529b9e05af981e5bef539e70582959b9d821854b93ef735ad1cd928d
DIST xlockmore-5.69.tar.xz 2008396 BLAKE2B 69341456769f34c1ac537f382b4baf287b5da47f4620581cbea5ab92749a26467781ebb6d7f3dfa9bd1eedf92d21fb8e501715af681972f06007408a5a44f4e5 SHA512 03c5938a7442665a2743894c0daa45f3b38569f2b3c3cf395f0d0f5758f6f873e0ef703936d0846d0210babe52357a398a885f919257efe9a2038c8e06be40b9
+DIST xlockmore-5.71.tar.xz 2048496 BLAKE2B 417bd4175a483d350cfa098c8a2488f81df9758874c1b53c36a6c2ae23f3b17c942c089d8ecce432f8db244cd8c4df7e79854ff9f2156153ee838ac98f2778ad SHA512 d09cd28dbca37db5e8fa7a388f4d797369b82a856b509414dd6dca5b586506c466b0fb112947a6a0c71e8c8de7cc125ef19c0fa358edc2a521ad38c255946e58
diff --git a/x11-misc/xlockmore/files/xlockmore-5.71-fix-build-for-clang16.patch b/x11-misc/xlockmore/files/xlockmore-5.71-fix-build-for-clang16.patch
new file mode 100644
index 000000000000..a6bd223373b1
--- /dev/null
+++ b/x11-misc/xlockmore/files/xlockmore-5.71-fix-build-for-clang16.patch
@@ -0,0 +1,28 @@
+Clang16 will not allow assigning imcompatbile function pointer types.
+Therefore this patch adds casts to the function pointers.
+
+Bug: https://bugs.gentoo.org/880909
+This patch has been sent to upstream via mail.
+
+Pascal Jäger <pascal.jaeger@leimstift.de> (2022-12-07)
+
+--- a/xlock/vtlock_proc.c
++++ b/xlock/vtlock_proc.c
+@@ -188,7 +188,7 @@ find_x_proc(int disp_nr, dev_t lxdev, ino_t lxino)
+ lencmd = strlen(xcmd_ref);
+ if ( stat( PROCDIR, &stbuf ) == -1 ) return( (pid_t)-1 );
+ namelist = (struct dirent **) malloc(sizeof (struct dirent *));
+- if ((names = scan_dir(PROCDIR, &namelist, proc_dir_select, alphasort)) == -1 )
++ if ((names = scan_dir(PROCDIR, &namelist, proc_dir_select, (int (*)(const void *, const void *))alphasort)) == -1 )
+ {
+ free(namelist);
+ return( (pid_t)-1 );
+@@ -301,7 +301,7 @@ scan_x_fds( struct inode_ref *inotab, int ln_ttys, pid_t proc )
+
+ (void) sprintf(xfddir, PROCDIR "/%d/fd", proc);
+ namelist = (struct dirent **) malloc(sizeof (struct dirent *));
+- if (scan_dir(xfddir, &namelist, NULL, alphasort) == -1) {
++ if (scan_dir(xfddir, &namelist, NULL, (int (*)(const void *, const void *))alphasort) == -1) {
+ free(namelist);
+ return 0;
+ }
diff --git a/x11-misc/xlockmore/xlockmore-5.71.ebuild b/x11-misc/xlockmore/xlockmore-5.71.ebuild
new file mode 100644
index 000000000000..0eebd9e89e6c
--- /dev/null
+++ b/x11-misc/xlockmore/xlockmore-5.71.ebuild
@@ -0,0 +1,125 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools flag-o-matic pam
+
+DESCRIPTION="Just another screensaver application for X"
+HOMEPAGE="https://www.sillycycle.com/xlockmore.html"
+SRC_URI="
+ https://www.sillycycle.com/xlock/${P/_alpha/ALPHA}.tar.xz
+ https://www.sillycycle.com/xlock/recent-releases/${P/_alpha/ALPHA}.tar.xz
+"
+S="${WORKDIR}/${P/_alpha/ALPHA}"
+
+LICENSE="BSD GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="crypt debug gtk imagemagick motif nas opengl pam truetype xinerama xlockrc vtlock"
+
+REQUIRED_USE="
+ || ( crypt pam )
+ pam? ( !xlockrc )
+ xlockrc? ( !pam )
+"
+
+BDEPEND="virtual/pkgconfig"
+RDEPEND="
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXmu
+ x11-libs/libXpm
+ x11-libs/libXt
+ gtk? ( x11-libs/gtk+:2 )
+ imagemagick? ( media-gfx/imagemagick:= )
+ motif? ( >=x11-libs/motif-2.3:0 )
+ nas? ( media-libs/nas )
+ opengl? (
+ virtual/opengl
+ virtual/glu
+ truetype? ( >=media-libs/ftgl-2.1.3_rc5 )
+ )
+ pam? ( sys-libs/pam )
+ truetype? ( media-libs/freetype:2 )
+ xinerama? ( x11-libs/libXinerama )
+"
+DEPEND="
+ ${RDEPEND}
+ x11-base/xorg-proto
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-5.46-freetype261.patch
+ "${FILESDIR}"/${PN}-5.47-CXX.patch
+ "${FILESDIR}"/${PN}-5.47-strip.patch
+ #"${FILESDIR}"/${PN}-5.64_alpha0-LDFLAGS.patch
+ "${FILESDIR}"/${PN}-5.71-fix-build-for-clang16.patch
+)
+
+src_prepare() {
+ default
+
+ sed -i \
+ -e '/XLOCKLIBPATHS="-L/d' \
+ -e '/XMLOCKLIBPATHS="-L/d' \
+ -e 's|/lib|'"${EPREFIX}/$(get_libdir)"'|g' \
+ configure.ac || die
+
+ eautoreconf
+}
+
+src_configure() {
+ # #864761
+ filter-lto
+
+ local myconf=()
+
+ if use opengl && use truetype; then
+ append-cppflags -DFTGL213
+
+ myconf=( --with-ftgl )
+ else
+ myconf=( --without-ftgl )
+ fi
+
+ myconf+=(
+ $(use_enable pam)
+ $(use_enable xlockrc)
+ $(use_enable vtlock)
+ $(use_with crypt)
+ $(use_with debug editres)
+ $(use_with gtk gtk2)
+ $(use_with imagemagick magick)
+ $(use_with motif)
+ $(use_with nas)
+ $(use_with opengl mesa)
+ $(use_with opengl)
+ $(use_with truetype freetype)
+ $(use_with truetype ttf)
+ $(use_with xinerama)
+ --disable-mb
+ --enable-appdefaultdir=/usr/share/X11/app-defaults
+ --enable-syslog
+ --enable-vtlock
+ --without-esound
+ --without-gtk
+ )
+
+ econf "${myconf[@]}"
+}
+
+src_install() {
+ local DOCS=( README docs/{3d.howto,cell_automata,HACKERS.GUIDE,Purify,Revisions,TODO} )
+ default
+
+ if use pam; then
+ pamd_mimic_system xlock auth
+ fperms 755 /usr/bin/xlock
+ else
+ fperms 4755 /usr/bin/xlock
+ fi
+
+ docinto html
+ dodoc docs/xlock.html
+}