Sfoglia il codice sorgente

package/{libfm, pcmanfm}: handle libgtk2 removal

As we're about to remove libgtk2, the libfm and pcmanfm packages need
to be adjusted so that they work with libgtk3 only. This requires a
bit of re-arrangment of the dependencies, to properly propagate the
libgtk3 dependencies.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Arnout Vandecappelle <arnout@rnout.be>
Thomas Petazzoni 4 mesi fa
parent
commit
b80bb9c4c5
4 ha cambiato i file con 48 aggiunte e 43 eliminazioni
  1. 22 12
      package/libfm/Config.in
  2. 2 9
      package/libfm/libfm.mk
  3. 22 13
      package/pcmanfm/Config.in
  4. 2 9
      package/pcmanfm/pcmanfm.mk

+ 22 - 12
package/libfm/Config.in

@@ -1,15 +1,19 @@
 config BR2_PACKAGE_LIBFM
 	bool "libfm"
-	depends on BR2_PACKAGE_XORG7
-	depends on BR2_USE_WCHAR # libglib2
-	depends on BR2_TOOLCHAIN_HAS_THREADS # libglib2
-	depends on BR2_USE_MMU # libglib2
-	depends on BR2_INSTALL_LIBSTDCPP # libgtk2
-	depends on BR2_TOOLCHAIN_HAS_SYNC_4 # libgtk2 -> pango -> harfbuzz
-	depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libgtk2 -> pango -> harfbuzz
+	depends on BR2_PACKAGE_HOST_RUSTC_ARCH_SUPPORTS # libgtk3
+	depends on BR2_USE_WCHAR # libgtk3, libglib2
+	depends on BR2_TOOLCHAIN_HAS_THREADS # libgtk3, libglib2
+	depends on BR2_USE_MMU # libgtk3, libglib2
+	depends on BR2_INSTALL_LIBSTDCPP # libgtk3
+	depends on BR2_TOOLCHAIN_HAS_SYNC_4 # libgtk3
+	depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libgtk3
+	depends on BR2_PACKAGE_HAS_LIBEGL || BR2_PACKAGE_HAS_LIBGL # libgtk3
+	depends on BR2_PACKAGE_XORG7 # libgtk3-x11
+	depends on BR2_PACKAGE_HAS_LIBGL # libgtk3-x11
 	select BR2_PACKAGE_CAIRO
 	select BR2_PACKAGE_LIBGLIB2
-	select BR2_PACKAGE_LIBGTK2 if !BR2_PACKAGE_LIBGTK3_X11
+	select BR2_PACKAGE_LIBGTK3
+	select BR2_PACKAGE_LIBGTK3_X11
 	select BR2_PACKAGE_MENU_CACHE
 	help
 	  A glib/gio-based library providing some file management
@@ -22,9 +26,15 @@ config BR2_PACKAGE_LIBFM
 
 	  http://wiki.lxde.org/en/Libfm
 
-comment "libfm needs X.org and a toolchain w/ wchar, threads, C++, gcc >= 4.9"
+comment "libfm a toolchain w/ wchar, threads, C++, gcc >= 4.9"
+	depends on BR2_PACKAGE_HOST_RUSTC_ARCH_SUPPORTS
 	depends on BR2_USE_MMU
 	depends on BR2_TOOLCHAIN_HAS_SYNC_4
-	depends on !BR2_USE_WCHAR || !BR2_INSTALL_LIBSTDCPP || \
-		!BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 || \
-		!BR2_TOOLCHAIN_HAS_THREADS || !BR2_PACKAGE_XORG7
+	depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS || \
+		!BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
+
+comment "libfm needs X.org with an OpenGL backend"
+	depends on BR2_PACKAGE_HOST_RUSTC_ARCH_SUPPORTS
+	depends on BR2_USE_MMU
+	depends on BR2_TOOLCHAIN_HAS_SYNC_4
+	depends on !BR2_PACKAGE_XORG7 || BR2_PACKAGE_HAS_LIBGL

+ 2 - 9
package/libfm/libfm.mk

@@ -7,12 +7,13 @@
 LIBFM_VERSION = 1.3.2
 LIBFM_SOURCE = libfm-$(LIBFM_VERSION).tar.xz
 LIBFM_SITE = http://sourceforge.net/projects/pcmanfm/files
-LIBFM_DEPENDENCIES = menu-cache libglib2 cairo
+LIBFM_DEPENDENCIES = menu-cache libglib2 cairo libgtk3
 LIBFM_LICENSE = GPL-2.0+, LGPL-2.1+
 LIBFM_LICENSE_FILES = COPYING src/extra/fm-xml-file.c
 LIBFM_INSTALL_STAGING = YES
 # We're patching src/modules/Makefile.am
 LIBFM_AUTORECONF = YES
+LIBFM_CONF_OPTS = --with-gtk=3
 
 ifeq ($(BR2_PACKAGE_LIBEXIF),y)
 LIBFM_CONF_OPTS += --enable-exif
@@ -21,12 +22,4 @@ else
 LIBFM_CONF_OPTS += --disable-exif
 endif
 
-ifeq ($(BR2_PACKAGE_LIBGTK3_X11),y)
-LIBFM_CONF_OPTS += --with-gtk=3
-LIBFM_DEPENDENCIES += libgtk3
-else
-LIBFM_CONF_OPTS += --with-gtk=2
-LIBFM_DEPENDENCIES += libgtk2
-endif
-
 $(eval $(autotools-package))

+ 22 - 13
package/pcmanfm/Config.in

@@ -1,16 +1,20 @@
 config BR2_PACKAGE_PCMANFM
 	bool "pcmanfm"
-	depends on BR2_PACKAGE_XORG7
-	depends on BR2_USE_WCHAR # libglib2
-	depends on BR2_TOOLCHAIN_HAS_THREADS # libglib2
-	depends on BR2_USE_MMU # libglib2
-	depends on BR2_INSTALL_LIBSTDCPP # libgtk2
-	depends on BR2_TOOLCHAIN_HAS_SYNC_4 # libgtk2 -> pango -> harfbuzz
-	depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libgtk2 -> pango -> harfbuzz
+	depends on BR2_PACKAGE_HOST_RUSTC_ARCH_SUPPORTS # libfm
+	depends on BR2_USE_WCHAR # libfm
+	depends on BR2_TOOLCHAIN_HAS_THREADS # libfm
+	depends on BR2_USE_MMU # libfm
+	depends on BR2_INSTALL_LIBSTDCPP # libfm
+	depends on BR2_TOOLCHAIN_HAS_SYNC_4 # libfm
+	depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libfm
+	depends on BR2_PACKAGE_HAS_LIBEGL || BR2_PACKAGE_HAS_LIBGL # libfm
+	depends on BR2_PACKAGE_XORG7 # libfm
+	depends on BR2_PACKAGE_HAS_LIBGL # libfm
 	select BR2_PACKAGE_LIBFM
 	select BR2_PACKAGE_MENU_CACHE
 	select BR2_PACKAGE_LIBGLIB2
-	select BR2_PACKAGE_LIBGTK2 if !BR2_PACKAGE_LIBGTK3_X11
+	select BR2_PACKAGE_LIBGTK3
+	select BR2_PACKAGE_LIBGTK3_X11
 	help
 	  PCMan File Manager (PCManFM) is a file manager application
 	  developed by Hong Jen Yee from Taiwan which is meant to be a
@@ -18,10 +22,15 @@ config BR2_PACKAGE_PCMANFM
 
 	  http://wiki.lxde.org/en/PCManFM
 
-comment "pcmanfm needs a toolchain w/ wchar, threads, C++, gcc >= 4.9"
+comment "pcmanfm a toolchain w/ wchar, threads, C++, gcc >= 4.9"
+	depends on BR2_PACKAGE_HOST_RUSTC_ARCH_SUPPORTS
 	depends on BR2_USE_MMU
-	depends on BR2_PACKAGE_XORG7
 	depends on BR2_TOOLCHAIN_HAS_SYNC_4
-	depends on !BR2_USE_WCHAR || !BR2_INSTALL_LIBSTDCPP || \
-		!BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 || \
-		!BR2_TOOLCHAIN_HAS_THREADS
+	depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS || \
+		!BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
+
+comment "pcmanfm needs X.org with an OpenGL backend"
+	depends on BR2_PACKAGE_HOST_RUSTC_ARCH_SUPPORTS
+	depends on BR2_USE_MMU
+	depends on BR2_TOOLCHAIN_HAS_SYNC_4
+	depends on !BR2_PACKAGE_XORG7 || BR2_PACKAGE_HAS_LIBGL

+ 2 - 9
package/pcmanfm/pcmanfm.mk

@@ -7,18 +7,11 @@
 PCMANFM_VERSION = 1.3.2
 PCMANFM_SOURCE = pcmanfm-$(PCMANFM_VERSION).tar.xz
 PCMANFM_SITE = http://sourceforge.net/projects/pcmanfm/files
-PCMANFM_DEPENDENCIES = libglib2 menu-cache libfm $(TARGET_NLS_DEPENDENCIES)
+PCMANFM_DEPENDENCIES = libglib2 menu-cache libfm libgtk3 $(TARGET_NLS_DEPENDENCIES)
 PCMANFM_LICENSE = GPL-2.0+
 PCMANFM_LICENSE_FILES = COPYING
 PCMANFM_CPE_ID_VALID = YES
 PCMANFM_CONF_ENV = LIBS=$(TARGET_NLS_LIBS)
-
-ifeq ($(BR2_PACKAGE_LIBGTK3_X11),y)
-PCMANFM_CONF_OPTS += --with-gtk=3
-PCMANFM_DEPENDENCIES += libgtk3
-else
-PCMANFM_CONF_OPTS += --with-gtk=2
-PCMANFM_DEPENDENCIES += libgtk2
-endif
+PCMANFM_CONF_OPTS = --with-gtk=3
 
 $(eval $(autotools-package))