From 86af453021acda116518352b9a4d2c8dff4a1ca7 Mon Sep 17 00:00:00 2001 From: Eneas U de Queiroz Date: Fri, 7 Dec 2018 23:03:02 -0200 Subject: [PATCH 1/3] grilo-plugins: use hostpkg glib-compile-resources Add GLIB_COMPILE_RESOURCES to MAKE_FLAGS Signed-off-by: Eneas U de Queiroz (cherry picked from commit 8e0b7978ec232345e7ba69c79cf447676295dd4e) --- multimedia/grilo-plugins/Makefile | 2 ++ 1 file changed, 2 insertions(+) diff --git a/multimedia/grilo-plugins/Makefile b/multimedia/grilo-plugins/Makefile index 6fdbce2b3..5879d6c16 100644 --- a/multimedia/grilo-plugins/Makefile +++ b/multimedia/grilo-plugins/Makefile @@ -53,6 +53,8 @@ CONFIGURE_ARGS += \ --without-libintl-prefix \ --without-x \ +MAKE_FLAGS += \ + GLIB_COMPILE_RESOURCES="$(STAGING_DIR_HOSTPKG)/bin/glib-compile-resources" define Package/grilo-plugins/install $(INSTALL_DIR) $(1)/usr/lib/grilo-0.3 endef From c3ab7aace811b78c92639d09359cab039c96775b Mon Sep 17 00:00:00 2001 From: Eneas U de Queiroz Date: Tue, 11 Dec 2018 22:29:16 -0200 Subject: [PATCH 2/3] grilo-plugins: remove XML::Parser build dependency gnome-common.m4 and gnome-compiler-flags.m4 were taken from version 3.18.0, and match current master branch. Disable building help and test directories. Signed-off-by: Eneas U de Queiroz (cherry picked from commit a87108fe408bc9ddcc2b2e9426b40ef431923875) --- multimedia/grilo-plugins/Makefile | 9 +- ...-remove-docs-gnome-from-configure.ac.patch | 31 +++ .../grilo-plugins/src/m4/gnome-common.m4 | 32 +++ .../src/m4/gnome-compiler-flags.m4 | 184 ++++++++++++++++++ 4 files changed, 251 insertions(+), 5 deletions(-) create mode 100644 multimedia/grilo-plugins/patches/001-remove-docs-gnome-from-configure.ac.patch create mode 100644 multimedia/grilo-plugins/src/m4/gnome-common.m4 create mode 100644 multimedia/grilo-plugins/src/m4/gnome-compiler-flags.m4 diff --git a/multimedia/grilo-plugins/Makefile b/multimedia/grilo-plugins/Makefile index 5879d6c16..d262ebfc3 100644 --- a/multimedia/grilo-plugins/Makefile +++ b/multimedia/grilo-plugins/Makefile @@ -1,6 +1,4 @@ # -# Copyright (C) 2006-2015 OpenWrt.org -# # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. # @@ -9,7 +7,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=grilo-plugins PKG_VERSION:=0.3.5 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_MAINTAINER:=W. Michael Petullo @@ -20,9 +18,10 @@ PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz PKG_SOURCE_URL:=@GNOME/grilo-plugins/0.3/ PKG_HASH:=2977827b8ecb3e15535236180e57dc35e85058d111349bdb6a1597e62a5068fb -PKG_BUILD_DEPENDS:=glib2 grilo - +PKG_BUILD_DEPENDS:=glib2 +PKG_BUILD_PARALLEL:=1 PKG_INSTALL:=1 +PKG_FIXUP:=autoreconf include $(INCLUDE_DIR)/package.mk include $(INCLUDE_DIR)/nls.mk diff --git a/multimedia/grilo-plugins/patches/001-remove-docs-gnome-from-configure.ac.patch b/multimedia/grilo-plugins/patches/001-remove-docs-gnome-from-configure.ac.patch new file mode 100644 index 000000000..8fee0880c --- /dev/null +++ b/multimedia/grilo-plugins/patches/001-remove-docs-gnome-from-configure.ac.patch @@ -0,0 +1,31 @@ +--- a/configure.ac ++++ b/configure.ac +@@ -1316,7 +1316,7 @@ AC_SUBST(DEPS_OPENSUBTITLES_LIBS) + # GETTEXT/INTLTOOL + # ---------------------------------------------------------- + +-IT_PROG_INTLTOOL([0.40.0]) ++IT_PROG_INTLTOOL([0.40.0], [no-xml]) + GETTEXT_PACKAGE=grilo-plugins + AC_SUBST(GETTEXT_PACKAGE) + AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE,"$GETTEXT_PACKAGE", [The domain to use with gettext]) +@@ -1334,7 +1334,7 @@ AC_SUBST([builddir]) + # DOCUMENTATION + # ---------------------------------------------------------- + +-YELP_HELP_INIT ++#YELP_HELP_INIT + + # ---------------------------------------------------------- + # OUTPUT +--- a/Makefile.am ++++ b/Makefile.am +@@ -10,7 +10,7 @@ include $(top_srcdir)/release.mk + + ACLOCAL_AMFLAGS = -I m4 + +-SUBDIRS = src help po tests ++SUBDIRS = src po + + MAINTAINERCLEANFILES = \ + $(GITIGNORE_MAINTAINERCLEANFILES_TOPLEVEL) \ diff --git a/multimedia/grilo-plugins/src/m4/gnome-common.m4 b/multimedia/grilo-plugins/src/m4/gnome-common.m4 new file mode 100644 index 000000000..a8d0fda43 --- /dev/null +++ b/multimedia/grilo-plugins/src/m4/gnome-common.m4 @@ -0,0 +1,32 @@ +# gnome-common.m4 +# +# serial 3 +# + +AU_DEFUN([GNOME_DEBUG_CHECK], +[ + AX_CHECK_ENABLE_DEBUG([no],[GNOME_ENABLE_DEBUG]) +], +[[$0: This macro is deprecated. You should use AX_CHECK_ENABLE_DEBUG instead and +replace uses of GNOME_ENABLE_DEBUG with ENABLE_DEBUG. +See: http://www.gnu.org/software/autoconf-archive/ax_check_enable_debug.html#ax_check_enable_debug]]) + +dnl GNOME_MAINTAINER_MODE_DEFINES () +dnl define DISABLE_DEPRECATED +dnl +AU_DEFUN([GNOME_MAINTAINER_MODE_DEFINES], +[ + AC_REQUIRE([AM_MAINTAINER_MODE]) + + DISABLE_DEPRECATED="" + if test $USE_MAINTAINER_MODE = yes; then + DOMAINS="GCONF BONOBO BONOBO_UI GNOME LIBGLADE GNOME_VFS WNCK LIBSOUP" + for DOMAIN in $DOMAINS; do + DISABLE_DEPRECATED="$DISABLE_DEPRECATED -D${DOMAIN}_DISABLE_DEPRECATED -D${DOMAIN}_DISABLE_SINGLE_INCLUDES" + done + fi + + AC_SUBST(DISABLE_DEPRECATED) +], +[[$0: This macro is deprecated. All of the modules it disables deprecations for +are obsolete. Remove it and all uses of DISABLE_DEPRECATED.]]) diff --git a/multimedia/grilo-plugins/src/m4/gnome-compiler-flags.m4 b/multimedia/grilo-plugins/src/m4/gnome-compiler-flags.m4 new file mode 100644 index 000000000..49ebb959b --- /dev/null +++ b/multimedia/grilo-plugins/src/m4/gnome-compiler-flags.m4 @@ -0,0 +1,184 @@ +# gnome-compiler-flags.m4 +# +# serial 4 +# + +dnl GNOME_COMPILE_WARNINGS +dnl Turn on many useful compiler warnings and substitute the result into +dnl WARN_CFLAGS +dnl For now, only works on GCC +dnl Pass the default value of the --enable-compile-warnings configure option as +dnl the first argument to the macro, defaulting to 'yes'. +dnl Additional warning/error flags can be passed as an optional second argument. +dnl +dnl For example: GNOME_COMPILE_WARNINGS([maximum],[-Werror=some-flag -Wfoobar]) +AU_DEFUN([GNOME_COMPILE_WARNINGS],[ + dnl ****************************** + dnl More compiler warnings + dnl ****************************** + + AC_ARG_ENABLE(compile-warnings, + AS_HELP_STRING([--enable-compile-warnings=@<:@no/minimum/yes/maximum/error@:>@], + [Turn on compiler warnings]),, + [enable_compile_warnings="m4_default([$1],[yes])"]) + + if test "x$GCC" != xyes; then + enable_compile_warnings=no + fi + + warning_flags= + realsave_CFLAGS="$CFLAGS" + + dnl These are warning flags that aren't marked as fatal. Can be + dnl overridden on a per-project basis with -Wno-foo. + base_warn_flags=" \ + -Wall \ + -Wstrict-prototypes \ + -Wnested-externs \ + " + + dnl These compiler flags typically indicate very broken or suspicious + dnl code. Some of them such as implicit-function-declaration are + dnl just not default because gcc compiles a lot of legacy code. + dnl We choose to make this set into explicit errors. + base_error_flags=" \ + -Werror=missing-prototypes \ + -Werror=implicit-function-declaration \ + -Werror=pointer-arith \ + -Werror=init-self \ + -Werror=format-security \ + -Werror=format=2 \ + -Werror=missing-include-dirs \ + -Werror=return-type \ + " + + dnl Additional warning or error flags provided by the module author to + dnl allow stricter standards to be imposed on a per-module basis. + dnl The author can pass -W or -Werror flags here as they see fit. + additional_flags="m4_default([$2],[])" + + case "$enable_compile_warnings" in + no) + warning_flags="-w" + ;; + minimum) + warning_flags="-Wall" + ;; + yes|maximum|error) + warning_flags="$base_warn_flags $base_error_flags $additional_flags" + ;; + *) + AC_MSG_ERROR(Unknown argument '$enable_compile_warnings' to --enable-compile-warnings) + ;; + esac + + if test "$enable_compile_warnings" = "error" ; then + warning_flags="$warning_flags -Werror" + fi + + dnl Check whether GCC supports the warning options + for option in $warning_flags; do + save_CFLAGS="$CFLAGS" + CFLAGS="$CFLAGS $option" + AC_MSG_CHECKING([whether gcc understands $option]) + AC_TRY_COMPILE([], [], + has_option=yes, + has_option=no,) + CFLAGS="$save_CFLAGS" + AC_MSG_RESULT([$has_option]) + if test $has_option = yes; then + tested_warning_flags="$tested_warning_flags $option" + fi + unset has_option + unset save_CFLAGS + done + unset option + CFLAGS="$realsave_CFLAGS" + AC_MSG_CHECKING(what warning flags to pass to the C compiler) + AC_MSG_RESULT($tested_warning_flags) + + AC_ARG_ENABLE(iso-c, + AS_HELP_STRING([--enable-iso-c], + [Try to warn if code is not ISO C ]),, + [enable_iso_c=no]) + + AC_MSG_CHECKING(what language compliance flags to pass to the C compiler) + complCFLAGS= + if test "x$enable_iso_c" != "xno"; then + if test "x$GCC" = "xyes"; then + case " $CFLAGS " in + *[\ \ ]-ansi[\ \ ]*) ;; + *) complCFLAGS="$complCFLAGS -ansi" ;; + esac + case " $CFLAGS " in + *[\ \ ]-pedantic[\ \ ]*) ;; + *) complCFLAGS="$complCFLAGS -pedantic" ;; + esac + fi + fi + AC_MSG_RESULT($complCFLAGS) + + WARN_CFLAGS="$tested_warning_flags $complCFLAGS" + AC_SUBST(WARN_CFLAGS) +], +[[$0: This macro is deprecated. You should use AX_COMPILER_FLAGS instead and +eliminate use of --enable-iso-c. +See: http://www.gnu.org/software/autoconf-archive/ax_compiler_flags.html#ax_compiler_flags]]) + +dnl For C++, do basically the same thing. + +AU_DEFUN([GNOME_CXX_WARNINGS],[ + AC_ARG_ENABLE(cxx-warnings, + AS_HELP_STRING([--enable-cxx-warnings=@<:@no/minimum/yes@:>@] + [Turn on compiler warnings.]),, + [enable_cxx_warnings="m4_default([$1],[minimum])"]) + + AC_MSG_CHECKING(what warning flags to pass to the C++ compiler) + warnCXXFLAGS= + if test "x$GXX" != xyes; then + enable_cxx_warnings=no + fi + if test "x$enable_cxx_warnings" != "xno"; then + if test "x$GXX" = "xyes"; then + case " $CXXFLAGS " in + *[\ \ ]-Wall[\ \ ]*) ;; + *) warnCXXFLAGS="-Wall -Wno-unused" ;; + esac + + ## -W is not all that useful. And it cannot be controlled + ## with individual -Wno-xxx flags, unlike -Wall + if test "x$enable_cxx_warnings" = "xyes"; then + warnCXXFLAGS="$warnCXXFLAGS -Wshadow -Woverloaded-virtual" + fi + fi + fi + AC_MSG_RESULT($warnCXXFLAGS) + + AC_ARG_ENABLE(iso-cxx, + AS_HELP_STRING([--enable-iso-cxx], + [Try to warn if code is not ISO C++ ]),, + [enable_iso_cxx=no]) + + AC_MSG_CHECKING(what language compliance flags to pass to the C++ compiler) + complCXXFLAGS= + if test "x$enable_iso_cxx" != "xno"; then + if test "x$GXX" = "xyes"; then + case " $CXXFLAGS " in + *[\ \ ]-ansi[\ \ ]*) ;; + *) complCXXFLAGS="$complCXXFLAGS -ansi" ;; + esac + + case " $CXXFLAGS " in + *[\ \ ]-pedantic[\ \ ]*) ;; + *) complCXXFLAGS="$complCXXFLAGS -pedantic" ;; + esac + fi + fi + AC_MSG_RESULT($complCXXFLAGS) + + WARN_CXXFLAGS="$CXXFLAGS $warnCXXFLAGS $complCXXFLAGS" + AC_SUBST(WARN_CXXFLAGS) +], +[[$0: This macro is deprecated. You should use AX_COMPILER_FLAGS instead and +eliminate use of --enable-iso-cxx. +See: http://www.gnu.org/software/autoconf-archive/ax_compiler_flags.html#ax_compiler_flags]]) From 8794f09564c783154be2013fe3122bc004170598 Mon Sep 17 00:00:00 2001 From: Eneas U de Queiroz Date: Mon, 26 Aug 2019 14:17:36 -0300 Subject: [PATCH 3/3] grilo-plugins: adjust CONFIGURE_ARGS Removed unused flags, and added --enable-compile-warnings=minimum to avoid a build failure with fortify-headers: In file included from [staging_dir/target]/usr/include/libxml2/libxml/tree.h:15:0, from [staging_dir/target]/usr/include/libxml2/libxml/parser.h:16, from grl-jamendo.c:32: [staging_dir/toolchain]/include/fortify/stdio.h: In function 'snprintf': [staging_dir/toolchain]/include/fortify/stdio.h:99:2: error: format not a string literal, argument types not checked [-Werror=format-nonliteral] return __orig_snprintf(__s, __n, __f, __builtin_va_arg_pack()); ^~~~~~ Signed-off-by: Eneas U de Queiroz --- multimedia/grilo-plugins/Makefile | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/multimedia/grilo-plugins/Makefile b/multimedia/grilo-plugins/Makefile index d262ebfc3..300b3e96b 100644 --- a/multimedia/grilo-plugins/Makefile +++ b/multimedia/grilo-plugins/Makefile @@ -48,9 +48,7 @@ endef CONFIGURE_ARGS += \ --enable-static \ - --without-libiconv-prefix \ - --without-libintl-prefix \ - --without-x \ + --enable-compile-warnings=minimum MAKE_FLAGS += \ GLIB_COMPILE_RESOURCES="$(STAGING_DIR_HOSTPKG)/bin/glib-compile-resources"