diff options
author | Brahmajit Das <brahmajit.xyz@gmail.com> | 2024-04-30 11:45:24 +0530 |
---|---|---|
committer | Florian Schmaus <flow@gentoo.org> | 2024-10-25 09:05:49 +0200 |
commit | 26434e181c61eb73a3145a9da302170375dae3fe (patch) | |
tree | e9394032290f8058d32aa4e2fb7ba9547ec2e0b9 | |
parent | net-mail/mlmmj: add 1.4.7 (diff) | |
download | gentoo-26434e181c61eb73a3145a9da302170375dae3fe.tar.gz gentoo-26434e181c61eb73a3145a9da302170375dae3fe.tar.bz2 gentoo-26434e181c61eb73a3145a9da302170375dae3fe.zip |
x11-misc/rofi-file-browser-extended: Fix incompatible pointer type
And some other build time warnings
Closes: https://bugs.gentoo.org/928491
Signed-off-by: Brahmajit Das <brahmajit.xyz@gmail.com>
Closes: https://github.com/gentoo/gentoo/pull/36482
Signed-off-by: Florian Schmaus <flow@gentoo.org>
2 files changed, 101 insertions, 0 deletions
diff --git a/x11-misc/rofi-file-browser-extended/files/rofi-file-browser-extended-1.3.1-fix-gcc14-build-fix.patch b/x11-misc/rofi-file-browser-extended/files/rofi-file-browser-extended-1.3.1-fix-gcc14-build-fix.patch new file mode 100644 index 000000000000..eb1a7b3f5d6d --- /dev/null +++ b/x11-misc/rofi-file-browser-extended/files/rofi-file-browser-extended-1.3.1-fix-gcc14-build-fix.patch @@ -0,0 +1,53 @@ +https://patch-diff.githubusercontent.com/raw/marvinkreis/rofi-file-browser-extended/pull/54.patch +From: Brahmajit Das <brahmajit.xyz@gmail.com> +Date: Tue, 30 Apr 2024 11:39:59 +0530 +Subject: [PATCH 1/1] Fix building with GCC 14 on i686 +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +GCC 14 (and above) have enabled certain compiler flags such as +Wincompatible-pointer-types that causes build time errors such as + +rofi-file-browser-extended-1.3.1/src/icons.c:52:57: error: passing argument 2 of ‘g_array_steal’ from incompatible pointer type [-Wincompatible-pointer-types] + 52 | char** icon_names_raw = g_array_steal ( icon_names, &num_icon_names ); + | ^~~~~~~~~~~~~~~ + | | + | long unsigned int * +In file included from /usr/include/glib-2.0/glib.h:33, + from /usr/include/glib-2.0/gmodule.h:30, + from /var/tmp/portage/x11-misc/rofi-file-browser-extended-1.3.1-r1/work/rofi-file-browser-extended-1.3.1/src/icons.c:1: +/usr/include/glib-2.0/glib/garray.h:86:54: note: expected ‘gsize *’ {aka ‘unsigned int *’} but argument is of type ‘long unsigned int *’ + 86 | gsize *len); + | ~~~~~~~~~~~~~~~~~~^~~ + +My patch attempts to fix this error and some other C99 related warnings. +First reported on Gentoo linux, please reffer +https://bugs.gentoo.org/928491 for more details + +Signed-off-by: Brahmajit Das <brahmajit.xyz@gmail.com> +--- a/src/files.c ++++ b/src/files.c +@@ -167,7 +167,7 @@ static bool match_glob_patterns ( const char *basename, FileBrowserFileData *fd + { + int len = strlen ( basename ); + for ( int i = 0; i < fd->num_exclude_patterns; i++ ) { +- if ( g_pattern_match ( fd->exclude_patterns[i], len, basename, NULL ) ) { ++ if ( g_pattern_spec_match ( fd->exclude_patterns[i], len, basename, NULL ) ) { + return false; + } + } +--- a/src/icons.c ++++ b/src/icons.c +@@ -48,7 +48,7 @@ void request_icons_for_file ( FBFile *fbfile, int icon_size, FileBrowserIconData + } + } + +- unsigned long num_icon_names; ++ gsize num_icon_names; + char** icon_names_raw = g_array_steal ( icon_names, &num_icon_names ); + + /* Create icon fetcher requests. */ +-- +2.45.0.rc1.218.g7b19149425.dirty + diff --git a/x11-misc/rofi-file-browser-extended/rofi-file-browser-extended-1.3.1-r2.ebuild b/x11-misc/rofi-file-browser-extended/rofi-file-browser-extended-1.3.1-r2.ebuild new file mode 100644 index 000000000000..4411556a8ad5 --- /dev/null +++ b/x11-misc/rofi-file-browser-extended/rofi-file-browser-extended-1.3.1-r2.ebuild @@ -0,0 +1,48 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake + +DESCRIPTION="A file browser for rofi" +HOMEPAGE="https://github.com/marvinkreis/rofi-file-browser-extended" + +if [[ ${PV} == "9999" ]]; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/marvinkreis/${PN}.git" +else + SRC_URI="https://github.com/marvinkreis/${PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz" + KEYWORDS="~amd64 ~x86" +fi + +LICENSE="MIT" +SLOT="0" + +BDEPEND="virtual/pkgconfig" +COMMON_DEPEND=" + dev-libs/glib:2 + x11-misc/rofi +" +DEPEND=" + ${COMMON_DEPEND} + x11-libs/cairo +" +RDEPEND="${COMMON_DEPEND}" + +PATCHES=( + # https://bugs.gentoo.org/880985 https://github.com/marvinkreis/rofi-file-browser-extended/pull/49 + "${FILESDIR}/${PN}-1.3.1-fix-function-pointer-initialization.patch" + "${FILESDIR}/${PN}-1.3.1-fix-gcc14-build-fix.patch" +) + +src_prepare() { + # Delete the lines in CMakeLists.txt that install the man page. + sed -i "45,56d" CMakeLists.txt || die + cmake_src_prepare +} + +src_install() { + cmake_src_install + doman "doc/${PN}.1" +} |