From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id CF3D2158041 for ; Sun, 17 Mar 2024 03:20:56 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 7A6DAE29BB; Sun, 17 Mar 2024 03:20:55 +0000 (UTC) Received: from smtp.gentoo.org (woodpecker.gentoo.org [IPv6:2001:470:ea4a:1:5054:ff:fec7:86e4]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 600C4E29BB for ; Sun, 17 Mar 2024 03:20:55 +0000 (UTC) Received: from oystercatcher.gentoo.org (oystercatcher.gentoo.org [148.251.78.52]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id 86730335DCC for ; Sun, 17 Mar 2024 03:20:54 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id A803614E1 for ; Sun, 17 Mar 2024 03:20:52 +0000 (UTC) From: "Sam James" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Sam James" Message-ID: <1710645472.1042734eac3ec936bf9fcd987f1c1e56cdf327c9.sam@gentoo> Subject: [gentoo-commits] repo/gentoo:master commit in: x11-libs/libfm/, x11-libs/libfm/files/ X-VCS-Repository: repo/gentoo X-VCS-Files: x11-libs/libfm/files/libfm-1.3.2-c99.patch x11-libs/libfm/libfm-1.3.2-r1.ebuild X-VCS-Directories: x11-libs/libfm/files/ x11-libs/libfm/ X-VCS-Committer: sam X-VCS-Committer-Name: Sam James X-VCS-Revision: 1042734eac3ec936bf9fcd987f1c1e56cdf327c9 X-VCS-Branch: master Date: Sun, 17 Mar 2024 03:20:52 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-Archives-Salt: 9dd7dfda-d3ba-4c6d-b906-f03d1152abf8 X-Archives-Hash: 363fb29226d8b24e4ba7c03155505c6c commit: 1042734eac3ec936bf9fcd987f1c1e56cdf327c9 Author: Sam James gentoo org> AuthorDate: Sun Mar 17 03:17:52 2024 +0000 Commit: Sam James gentoo org> CommitDate: Sun Mar 17 03:17:52 2024 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1042734e x11-libs/libfm: fix modern C issue Closes: https://bugs.gentoo.org/919076 Signed-off-by: Sam James gentoo.org> x11-libs/libfm/files/libfm-1.3.2-c99.patch | 48 +++++++++++ x11-libs/libfm/libfm-1.3.2-r1.ebuild | 127 +++++++++++++++++++++++++++++ 2 files changed, 175 insertions(+) diff --git a/x11-libs/libfm/files/libfm-1.3.2-c99.patch b/x11-libs/libfm/files/libfm-1.3.2-c99.patch new file mode 100644 index 000000000000..b84cf01111c8 --- /dev/null +++ b/x11-libs/libfm/files/libfm-1.3.2-c99.patch @@ -0,0 +1,48 @@ +https://bugs.gentoo.org/919076 +https://github.com/lxde/libfm/issues/100 +https://github.com/lxde/libfm/pull/101 + +From ec6a21263d150aea918826941a80f335b45470a8 Mon Sep 17 00:00:00 2001 +From: Mamoru TASAKA +Date: Fri, 1 Mar 2024 14:19:46 +0900 +Subject: [PATCH] FIX: support gcc14 -Werror=incompatible-pointer-types + +gcc14 now defaults to -Werror=incompatible-pointer-types . +To support this, cast GTK related objects for assignment +properly. + +Fixes #100 . +--- a/src/gtk/exo/exo-icon-view.c ++++ b/src/gtk/exo/exo-icon-view.c +@@ -2819,7 +2819,7 @@ exo_icon_view_key_press_event (GtkWidget *widget, + /* allocate a new event to forward */ + new_event = gdk_event_copy ((GdkEvent *) event); + g_object_unref (G_OBJECT (new_event->key.window)); +- new_event->key.window = g_object_ref (G_OBJECT (gtk_widget_get_window (icon_view->priv->search_entry))); ++ new_event->key.window = GDK_WINDOW(g_object_ref (G_OBJECT (gtk_widget_get_window (icon_view->priv->search_entry)))); + + /* send the event to the search entry. If the "preedit-changed" signal is + * emitted during this event, priv->search_imcontext_changed will be set. +--- a/src/gtk/fm-dnd-dest.c ++++ b/src/gtk/fm-dnd-dest.c +@@ -458,7 +458,7 @@ static GdkDragAction _ask_action_on_drop(GtkWidget *widget, + gtk_action_set_sensitive(act, FALSE); + } + } +- ri.menu = g_object_ref(gtk_ui_manager_get_widget(ui, "/popup")); ++ ri.menu = GTK_MENU(g_object_ref(gtk_ui_manager_get_widget(ui, "/popup"))); + g_signal_connect(ri.menu, "selection-done", G_CALLBACK(gtk_widget_destroy), NULL); + unmap_handler = g_signal_connect(ri.menu, "unmap", + G_CALLBACK(run_unmap_handler), &ri); +--- a/src/gtk/fm-standard-view.c ++++ b/src/gtk/fm-standard-view.c +@@ -637,7 +637,7 @@ static inline void create_icon_view(FmStandardView* fv, GList* sels) + "text", FM_FOLDER_MODEL_COL_NAME ); + if(fv->renderer_text) + g_object_unref(fv->renderer_text); +- fv->renderer_text = g_object_ref_sink(render); ++ fv->renderer_text = FM_CELL_RENDERER_TEXT(g_object_ref_sink(render)); + exo_icon_view_set_search_column((ExoIconView*)fv->view, FM_FOLDER_MODEL_COL_NAME); + g_signal_connect(fv->view, "item-activated", G_CALLBACK(on_icon_view_item_activated), fv); + g_signal_connect(fv->view, "selection-changed", G_CALLBACK(on_sel_changed), fv); + diff --git a/x11-libs/libfm/libfm-1.3.2-r1.ebuild b/x11-libs/libfm/libfm-1.3.2-r1.ebuild new file mode 100644 index 000000000000..63012f59c6ff --- /dev/null +++ b/x11-libs/libfm/libfm-1.3.2-r1.ebuild @@ -0,0 +1,127 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +MY_P="${PN}-${PV/_/}" +inherit autotools vala xdg + +DESCRIPTION="Library for file management" +HOMEPAGE="https://wiki.lxde.org/en/PCManFM" +SRC_URI="https://github.com/lxde/libfm/archive/${PV}.tar.gz -> ${MY_P}.tar.gz" +S="${WORKDIR}"/${MY_P} + +LICENSE="GPL-2" +SLOT="0/5.3.1" # copy ABI_VERSION because it seems upstream change it randomly +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~x86 ~amd64-linux ~x86-linux" +IUSE="+automount debug doc examples exif gtk udisks vala" + +REQUIRED_USE="udisks? ( automount ) doc? ( gtk )" + +DEPEND=" + >=dev-libs/glib-2.18:2 + >=lxde-base/menu-cache-1.1.0-r1:= + ~x11-libs/libfm-extra-${PV} + gtk? ( x11-libs/gtk+:3 ) + udisks? ( dev-libs/dbus-glib ) +" +RDEPEND="${DEPEND} + !lxde-base/lxshortcut + x11-misc/shared-mime-info + automount? ( + udisks? ( gnome-base/gvfs[udev,udisks] ) + !udisks? ( gnome-base/gvfs[udev] ) + ) + exif? ( media-libs/libexif ) +" +BDEPEND=" + app-arch/xz-utils + dev-util/glib-utils + >=dev-util/intltool-0.40 + sys-devel/gettext + virtual/pkgconfig + doc? ( dev-util/gtk-doc ) + vala? ( $(vala_depend) ) +" + +PATCHES=( + "${FILESDIR}/${P}-buildsystem.patch" + "${FILESDIR}/${PN}-1.3.2-c99.patch" +) + +src_prepare() { + xdg_src_prepare + + if ! use doc; then + sed -ie '/^SUBDIR.*=/s#docs##' Makefile.am || die + sed -ie '/^[[:space:]]*docs/d' configure.ac || die + fi + + # disable unused translations. Bug #356029 + cat <<-EOF >> po/POTFILES.in || die +data/ui/app-chooser.ui +data/ui/ask-rename.ui +data/ui/exec-file.ui +data/ui/file-prop.ui +data/ui/preferred-apps.ui +data/ui/progress.ui +EOF + + # subslot sanity check + local sub_slot=${SLOT#*/} + local libfm_major_abi=$(sed -rne '/ABI_VERSION/s:.*=::p' src/Makefile.am | tr ':' '.') + + if [[ ${sub_slot} != ${libfm_major_abi} ]]; then + eerror "Ebuild sub-slot (${sub_slot}) does not match ABI_VERSION(${libfm_major_abi})" + eerror "Please update SLOT variable as follows:" + eerror " SLOT=\"${SLOT%%/*}/${libfm_major_abi}\"" + eerror + die "sub-slot sanity check failed" + fi + + eautoreconf + rm -r autom4te.cache || die + use vala && export VALAC="$(type -p valac-$(vala_best_api_version))" +} + +src_configure() { + local myeconfargs=( + --disable-static + --with-html-dir=/usr/share/doc/${PF}/html + $(use_enable debug) + $(use_enable doc gtk-doc) + $(use_enable examples demo) + $(use_enable exif) + $(use_with gtk gtk 3) + $(use_enable udisks) + $(use_enable vala old-actions) + ) + econf "${myeconfargs[@]}" +} + +src_install() { + default + find "${ED}" -name '*.la' -delete || die + # Sometimes a directory is created instead of a symlink. No idea why... + # It is wrong anyway. We expect a libfm-1.0 directory and then a libfm + # symlink to it. + if [[ -h ${D}/usr/include/${PN} || -d ${D}/usr/include/${PN} ]]; then + rm -r "${D}"/usr/include/${PN} || die + fi + # Remove files installed by split-off libfm-extra package + rm "${D}"/usr/include/libfm-1.0/fm-{extra,version,xml-file}.h || die + rm "${D}"/usr/$(get_libdir)/libfm-extra* || die + rm "${D}"/usr/$(get_libdir)/pkgconfig/libfm-extra.pc || die +} + +pkg_preinst() { + xdg_pkg_preinst + # Resolve the symlink mess. Bug #439570 + if [[ -d "${ROOT}"/usr/include/${PN} ]]; then + rm -rf "${ROOT}"/usr/include/${PN} || die + fi + if [[ -d "${D}"/usr/include/${PN}-1.0 ]]; then + cd "${D}"/usr/include || die + ln -s --force ${PN}-1.0 ${PN} || die + fi +}