diff options
author | Thomas Beierlein <tomjbe@gentoo.org> | 2016-12-16 08:19:24 +0100 |
---|---|---|
committer | Thomas Beierlein <tomjbe@gentoo.org> | 2016-12-16 08:20:33 +0100 |
commit | f55bf29d2e909ad052cd112aab97f1e4567d06ed (patch) | |
tree | 16968e4267e435f477cf3883cce5b270e844ba89 /media-radio/tlf | |
parent | dev-perl/Server-Starter: Bump to version 0.330.0 (diff) | |
download | gentoo-f55bf29d2e909ad052cd112aab97f1e4567d06ed.tar.gz gentoo-f55bf29d2e909ad052cd112aab97f1e4567d06ed.tar.bz2 gentoo-f55bf29d2e909ad052cd112aab97f1e4567d06ed.zip |
media-radio/tlf: backport new AX_WITH_CURSES macro
Fixes compile error with ncurses[tinfo].
Package-Manager: Portage-2.3.3, Repoman-2.3.1
Diffstat (limited to 'media-radio/tlf')
-rw-r--r-- | media-radio/tlf/files/ncurses_tinfo.patch | 355 | ||||
-rw-r--r-- | media-radio/tlf/tlf-1.2.4.1.ebuild | 7 | ||||
-rw-r--r-- | media-radio/tlf/tlf-1.2.4.5.ebuild | 7 |
3 files changed, 367 insertions, 2 deletions
diff --git a/media-radio/tlf/files/ncurses_tinfo.patch b/media-radio/tlf/files/ncurses_tinfo.patch new file mode 100644 index 000000000000..c70b96ef7aef --- /dev/null +++ b/media-radio/tlf/files/ncurses_tinfo.patch @@ -0,0 +1,355 @@ +diff -u tlf-1.2.4.5/macros/ax_with_curses.m4 tlf/macros/ax_with_curses.m4 +--- tlf-1.2.4.5/macros/ax_with_curses.m4 2016-11-19 10:22:20.000000000 +0100 ++++ tlf/macros/ax_with_curses.m4 2016-12-13 08:03:02.855327396 +0100 +@@ -12,7 +12,9 @@ + # present, along with the associated header file. The NcursesW + # (wide-character) library is searched for first, followed by Ncurses, + # then the system-default plain Curses. The first library found is the +-# one returned. ++# one returned. Finding libraries will first be attempted by using ++# pkg-config, and should the pkg-config files not be available, will ++# fallback to combinations of known flags itself. + # + # The following options are understood: --with-ncursesw, --with-ncurses, + # --without-ncursesw, --without-ncurses. The "--with" options force the +@@ -52,23 +54,29 @@ + # + # (These preprocessor symbols are discussed later in this document.) + # +-# The following output variable is defined by this macro; it is precious +-# and may be overridden on the ./configure command line: ++# The following output variables are defined by this macro; they are ++# precious and may be overridden on the ./configure command line: + # +-# CURSES_LIB - library to add to xxx_LDADD ++# CURSES_LIBS - library to add to xxx_LDADD ++# CURSES_CFLAGS - include paths to add to xxx_CPPFLAGS + # +-# The library listed in CURSES_LIB is NOT added to LIBS by default. You +-# need to add CURSES_LIB to the appropriate xxx_LDADD line in your +-# Makefile.am. For example: +-# +-# prog_LDADD = @CURSES_LIB@ +-# +-# If CURSES_LIB is set on the configure command line (such as by running +-# "./configure CURSES_LIB=-lmycurses"), then the only header searched for +-# is <curses.h>. The user may use the CPPFLAGS precious variable to +-# override the standard #include search path. If the user needs to +-# specify an alternative path for a library (such as for a non-standard +-# NcurseW), the user should use the LDFLAGS variable. ++# In previous versions of this macro, the flags CURSES_LIB and ++# CURSES_CPPFLAGS were defined. These have been renamed, in keeping with ++# AX_WITH_CURSES's close bigger brother, PKG_CHECK_MODULES, which should ++# eventually supersede the use of AX_WITH_CURSES. Neither the library ++# listed in CURSES_LIBS, nor the flags in CURSES_CFLAGS are added to LIBS, ++# respectively CPPFLAGS, by default. You need to add both to the ++# appropriate xxx_LDADD/xxx_CPPFLAGS line in your Makefile.am. For ++# example: ++# ++# prog_LDADD = @CURSES_LIBS@ ++# prog_CPPFLAGS = @CURSES_CFLAGS@ ++# ++# If CURSES_LIBS is set on the configure command line (such as by running ++# "./configure CURSES_LIBS=-lmycurses"), then the only header searched for ++# is <curses.h>. If the user needs to specify an alternative path for a ++# library (such as for a non-standard NcurseW), the user should use the ++# LDFLAGS variable. + # + # The following shell variables may be defined by this macro: + # +@@ -182,11 +190,66 @@ + # modified version of the Autoconf Macro, you may extend this special + # exception to the GPL to apply to your modified version as well. + +-#serial 15 ++#serial 17 ++ ++# internal function to factorize common code that is used by both ncurses ++# and ncursesw ++AC_DEFUN([_FIND_CURSES_FLAGS], [ ++ AC_MSG_CHECKING([for $1 via pkg-config]) ++ ++ AX_REQUIRE_DEFINED([PKG_CHECK_EXISTS]) ++ _PKG_CONFIG([_ax_cv_$1_libs], [libs], [$1]) ++ _PKG_CONFIG([_ax_cv_$1_cppflags], [cflags], [$1]) ++ ++ AS_IF([test "x$pkg_failed" = "xyes" || test "x$pkg_failed" = "xuntried"],[ ++ AC_MSG_RESULT([no]) ++ # No suitable .pc file found, have to find flags via fallback ++ AC_CACHE_CHECK([for $1 via fallback], [ax_cv_$1], [ ++ AS_ECHO() ++ pkg_cv__ax_cv_$1_libs="-l$1" ++ pkg_cv__ax_cv_$1_cppflags="-D_GNU_SOURCE $CURSES_CFLAGS" ++ LIBS="$ax_saved_LIBS $pkg_cv__ax_cv_$1_libs" ++ CPPFLAGS="$ax_saved_CPPFLAGS $pkg_cv__ax_cv_$1_cppflags" ++ ++ AC_MSG_CHECKING([for initscr() with $pkg_cv__ax_cv_$1_libs]) ++ AC_LINK_IFELSE([AC_LANG_CALL([], [initscr])], ++ [ ++ AC_MSG_RESULT([yes]) ++ AC_MSG_CHECKING([for nodelay() with $pkg_cv__ax_cv_$1_libs]) ++ AC_LINK_IFELSE([AC_LANG_CALL([], [nodelay])],[ ++ ax_cv_$1=yes ++ ],[ ++ AC_MSG_RESULT([no]) ++ m4_if( ++ [$1],[ncursesw],[pkg_cv__ax_cv_$1_libs="$pkg_cv__ax_cv_$1_libs -ltinfow"], ++ [$1],[ncurses],[pkg_cv__ax_cv_$1_libs="$pkg_cv__ax_cv_$1_libs -ltinfo"] ++ ) ++ LIBS="$ax_saved_LIBS $pkg_cv__ax_cv_$1_libs" ++ ++ AC_MSG_CHECKING([for nodelay() with $pkg_cv__ax_cv_$1_libs]) ++ AC_LINK_IFELSE([AC_LANG_CALL([], [nodelay])],[ ++ ax_cv_$1=yes ++ ],[ ++ ax_cv_$1=no ++ ]) ++ ]) ++ ],[ ++ ax_cv_$1=no ++ ]) ++ ]) ++ ],[ ++ AC_MSG_RESULT([yes]) ++ # Found .pc file, using its information ++ LIBS="$ax_saved_LIBS $pkg_cv__ax_cv_$1_libs" ++ CPPFLAGS="$ax_saved_CPPFLAGS $pkg_cv__ax_cv_$1_cppflags" ++ ax_cv_$1=yes ++ ]) ++]) + + AU_ALIAS([MP_WITH_CURSES], [AX_WITH_CURSES]) + AC_DEFUN([AX_WITH_CURSES], [ +- AC_ARG_VAR([CURSES_LIB], [linker library for Curses, e.g. -lcurses]) ++ AC_ARG_VAR([CURSES_LIBS], [linker library for Curses, e.g. -lcurses]) ++ AC_ARG_VAR([CURSES_CFLAGS], [preprocessor flags for Curses, e.g. -I/usr/include/ncursesw]) + AC_ARG_WITH([ncurses], [AS_HELP_STRING([--with-ncurses], + [force the use of Ncurses or NcursesW])], + [], [with_ncurses=check]) +@@ -195,20 +258,17 @@ + [], [with_ncursesw=check]) + + ax_saved_LIBS=$LIBS ++ ax_saved_CPPFLAGS=$CPPFLAGS ++ + AS_IF([test "x$with_ncurses" = xyes || test "x$with_ncursesw" = xyes], + [ax_with_plaincurses=no], [ax_with_plaincurses=check]) + + ax_cv_curses_which=no + + # Test for NcursesW ++ AS_IF([test "x$CURSES_LIBS" = x && test "x$with_ncursesw" != xno], [ ++ _FIND_CURSES_FLAGS([ncursesw]) + +- AS_IF([test "x$CURSES_LIB" = x && test "x$with_ncursesw" != xno], [ +- LIBS="$ax_saved_LIBS -lncursesw" +- +- AC_CACHE_CHECK([for NcursesW wide-character library], [ax_cv_ncursesw], [ +- AC_LINK_IFELSE([AC_LANG_CALL([], [initscr])], +- [ax_cv_ncursesw=yes], [ax_cv_ncursesw=no]) +- ]) + AS_IF([test "x$ax_cv_ncursesw" = xno && test "x$with_ncursesw" = xyes], [ + AC_MSG_ERROR([--with-ncursesw specified but could not find NcursesW library]) + ]) +@@ -216,7 +276,8 @@ + AS_IF([test "x$ax_cv_ncursesw" = xyes], [ + ax_cv_curses=yes + ax_cv_curses_which=ncursesw +- CURSES_LIB="-lncursesw" ++ CURSES_LIBS="$pkg_cv__ax_cv_ncursesw_libs" ++ CURSES_CFLAGS="$pkg_cv__ax_cv_ncursesw_cppflags" + AC_DEFINE([HAVE_NCURSESW], [1], [Define to 1 if the NcursesW library is present]) + AC_DEFINE([HAVE_CURSES], [1], [Define to 1 if a SysV or X/Open compatible Curses library is present]) + +@@ -318,16 +379,13 @@ + ]) + ]) + ]) ++ unset pkg_cv__ax_cv_ncursesw_libs ++ unset pkg_cv__ax_cv_ncursesw_cppflags + + # Test for Ncurses ++ AS_IF([test "x$CURSES_LIBS" = x && test "x$with_ncurses" != xno && test "x$ax_cv_curses_which" = xno], [ ++ _FIND_CURSES_FLAGS([ncurses]) + +- AS_IF([test "x$CURSES_LIB" = x && test "x$with_ncurses" != xno && test "x$ax_cv_curses_which" = xno], [ +- LIBS="$ax_saved_LIBS -lncurses" +- +- AC_CACHE_CHECK([for Ncurses library], [ax_cv_ncurses], [ +- AC_LINK_IFELSE([AC_LANG_CALL([], [initscr])], +- [ax_cv_ncurses=yes], [ax_cv_ncurses=no]) +- ]) + AS_IF([test "x$ax_cv_ncurses" = xno && test "x$with_ncurses" = xyes], [ + AC_MSG_ERROR([--with-ncurses specified but could not find Ncurses library]) + ]) +@@ -335,7 +393,8 @@ + AS_IF([test "x$ax_cv_ncurses" = xyes], [ + ax_cv_curses=yes + ax_cv_curses_which=ncurses +- CURSES_LIB="-lncurses" ++ CURSES_LIBS="$pkg_cv__ax_cv_ncurses_libs" ++ CURSES_CFLAGS="$pkg_cv__ax_cv_ncurses_cppflags" + AC_DEFINE([HAVE_NCURSES], [1], [Define to 1 if the Ncurses library is present]) + AC_DEFINE([HAVE_CURSES], [1], [Define to 1 if a SysV or X/Open compatible Curses library is present]) + +@@ -390,12 +449,13 @@ + ]) + ]) + ]) ++ unset pkg_cv__ax_cv_ncurses_libs ++ unset pkg_cv__ax_cv_ncurses_cppflags + +- # Test for plain Curses (or if CURSES_LIB was set by user) +- ++ # Test for plain Curses (or if CURSES_LIBS was set by user) + AS_IF([test "x$with_plaincurses" != xno && test "x$ax_cv_curses_which" = xno], [ +- AS_IF([test "x$CURSES_LIB" != x], [ +- LIBS="$ax_saved_LIBS $CURSES_LIB" ++ AS_IF([test "x$CURSES_LIBS" != x], [ ++ LIBS="$ax_saved_LIBS $CURSES_LIBS" + ], [ + LIBS="$ax_saved_LIBS -lcurses" + ]) +@@ -408,8 +468,8 @@ + AS_IF([test "x$ax_cv_plaincurses" = xyes], [ + ax_cv_curses=yes + ax_cv_curses_which=plaincurses +- AS_IF([test "x$CURSES_LIB" = x], [ +- CURSES_LIB="-lcurses" ++ AS_IF([test "x$CURSES_LIBS" = x], [ ++ CURSES_LIBS="-lcurses" + ]) + AC_DEFINE([HAVE_CURSES], [1], [Define to 1 if a SysV or X/Open compatible Curses library is present]) + +@@ -515,4 +575,8 @@ + AS_IF([test "x$ax_cv_curses_obsolete" != xyes], [ax_cv_curses_obsolete=no]) + + LIBS=$ax_saved_LIBS ++ CPPFLAGS=$ax_saved_CPPFLAGS ++ ++ unset ax_saved_LIBS ++ unset ax_saved_CPPFLAGS + ])dnl +diff -u tlf-1.2.4.5/macros/ax_with_curses_extra.m4 tlf/macros/ax_with_curses_extra.m4 +--- tlf-1.2.4.5/macros/ax_with_curses_extra.m4 2016-11-19 10:22:20.000000000 +0100 ++++ tlf/macros/ax_with_curses_extra.m4 2016-12-13 08:06:03.887433760 +0100 +@@ -41,18 +41,22 @@ + # The following output variables may be defined by these macros; these are + # precious and may be overridden on the ./configure command line: + # +-# PANEL_LIB - library to add to xxx_LDADD before CURSES_LIB +-# MENU_LIB - library to add to xxx_LDADD before CURSES_LIB +-# FORM_LIB - library to add to xxx_LDADD before CURSES_LIB +-# +-# These libraries are NOT added to LIBS by default. You need to add them +-# to the appropriate xxx_LDADD line in your Makefile.am in front of the +-# equivalent CURSES_LIB incantation. For example: ++# PANEL_LIBS - library to add to xxx_LDADD before CURSES_LIBS ++# MENU_LIBS - library to add to xxx_LDADD before CURSES_LIBS ++# FORM_LIBS - library to add to xxx_LDADD before CURSES_LIBS ++# ++# In previous versions of this macro, the flags PANEL_LIB, MENU_LIB and ++# FORM_LIB were defined. These have been renamed, in keeping with the ++# variable scheme of PKG_CHECK_MODULES, which should eventually supersede ++# the use of AX_WITH_CURSES and AX_WITH_CURSES_* macros. These libraries ++# are NOT added to LIBS by default. You need to add them to the ++# appropriate xxx_LDADD line in your Makefile.am in front of the ++# equivalent CURSES_LIBS incantation. For example: + # +-# prog_LDADD = @PANEL_LIB@ @CURSES_LIB@ ++# prog_LDADD = @PANEL_LIBS@ @CURSES_LIBS@ + # +-# If one of the xxx_LIB variables is set on the configure command line +-# (such as by running "./configure PANEL_LIB=-lmypanel"), then the header ++# If one of the xxx_LIBS variables is set on the configure command line ++# (such as by running "./configure PANEL_LIBS=-lmypanel"), then the header + # file searched must NOT contain a subpath. In this case, in other words, + # only <panel.h> would be searched for. The user may use the CPPFLAGS + # precious variable to override the standard #include search path. +@@ -144,7 +148,7 @@ + # modified version of the Autoconf Macro, you may extend this special + # exception to the GPL to apply to your modified version as well. + +-#serial 2 ++#serial 4 + + AC_DEFUN([_AX_WITH_CURSES_CHECKEXTRA], [ + dnl Parameter 1 is the variable name component, using uppercase letters only +@@ -159,8 +163,11 @@ + AS_VAR_PUSHDEF([_AX_WITH_CURSES_CHECKEXTRA_have_header_var], [HAVE_[]m4_toupper($4)])dnl + + ax_saved_LIBS=$LIBS ++ ax_saved_CPPFLAGS=$CPPFLAGS ++ + AC_CACHE_CHECK([for Curses $2 library with $4], [_AX_WITH_CURSES_CHECKEXTRA_header_var], [ +- LIBS="$ax_saved_LIBS $5 $CURSES_LIB" ++ LIBS="$ax_saved_LIBS $5 $CURSES_LIBS" ++ CPPFLAGS="$ax_saved_CPPFLAGS $CURSES_CFLAGS" + AC_LINK_IFELSE([AC_LANG_PROGRAM([[ + @%:@include <$4> + ]], [$3])], +@@ -169,14 +176,18 @@ + ]) + AS_IF([test "x$[]_AX_WITH_CURSES_CHECKEXTRA_header_var" = xyes], [ + _AX_WITH_CURSES_CHECKEXTRA_cv_var=yes +- AS_LITERAL_IF([$5], [$1_LIB="$5"]) ++ AS_LITERAL_IF([$5], [$1_LIBS="$5"]) + AC_DEFINE([_AX_WITH_CURSES_CHECKEXTRA_have_var], [1], [Define to 1 if the Curses $2 library is present]) + AC_DEFINE([_AX_WITH_CURSES_CHECKEXTRA_have_header_var], [1], [Define to 1 if <$4> is present]) + ], [ + AS_IF([test "x$[]_AX_WITH_CURSES_CHECKEXTRA_cv_var" = xyes], [], + [_AX_WITH_CURSES_CHECKEXTRA_cv_var=no]) + ]) ++ + LIBS=$ax_saved_LIBS ++ CPPFLAGS=$ax_saved_CPPFLAGS ++ unset ax_saved_LIBS ++ unset ax_saved_CPPFLAGS + + AS_VAR_POPDEF([_AX_WITH_CURSES_CHECKEXTRA_have_header_var])dnl + AS_VAR_POPDEF([_AX_WITH_CURSES_CHECKEXTRA_header_var])dnl +@@ -194,16 +205,18 @@ + dnl Parameter 7 is the plain Curses library command line + + AC_REQUIRE([AX_WITH_CURSES]) +- AC_ARG_VAR([$1_LIB], [linker library for Curses $2, e.g. $7]) ++ AC_ARG_VAR([$1_LIBS], [linker library for Curses $2, e.g. $7]) + +- AS_IF([test "x$[]$1_LIB" != x], [ +- _AX_WITH_CURSES_CHECKEXTRA([$1], [$2], [$3], [$4], [$[]$1_LIB]) ++ AS_IF([test "x$[]$1_LIBS" != x], [ ++ _AX_WITH_CURSES_CHECKEXTRA([$1], [$2], [$3], [$4], [$[]$1_LIBS]) + ], [ + AS_IF([test "x$ax_cv_curses_which" = xncursesw], [ + _AX_WITH_CURSES_CHECKEXTRA([$1], [$2], [$3], [ncursesw/$4], [$5]) + ], [test "x$ax_cv_curses_which" = xncurses], [ +- _AX_WITH_CURSES_CHECKEXTRA([$1], [$2], [$3], [ncurses/$4], [$6]) + _AX_WITH_CURSES_CHECKEXTRA([$1], [$2], [$3], [$4], [$6]) ++ AS_IF([test x$[]ax_cv_[]m4_tolower($1) != "xyes"], [ ++ _AX_WITH_CURSES_CHECKEXTRA([$1], [$2], [$3], [ncurses/$4], [$6]) ++ ]) + ], [test "x$ax_cv_curses_which" = xplaincurses], [ + _AX_WITH_CURSES_CHECKEXTRA([$1], [$2], [$3], [$4], [$7]) + ]) +diff -u tlf-1.2.4.5/src/Makefile.am tlf/src/Makefile.am +--- tlf-1.2.4.5/src/Makefile.am 2016-11-19 10:22:20.000000000 +0100 ++++ tlf/src/Makefile.am 2016-12-13 08:12:33.146327500 +0100 +@@ -1,5 +1,5 @@ + AM_CPPFLAGS = @GLIB_CFLAGS@ -DPACKAGE_DATA_DIR=\"$(pkgdatadir)\" +-AM_CFLAGS = @AM_CFLAGS@ @PTHREAD_CFLAGS@ @HAMLIB_CFLAGS@ ++AM_CFLAGS = @AM_CFLAGS@ @PTHREAD_CFLAGS@ @HAMLIB_CFLAGS@ @CURSES_CFLAGS@ + + bin_PROGRAMS = tlf + +@@ -33,8 +33,9 @@ + write_keyer.c writecabrillo.c writeparas.c \ + zone_nr.c + +-tlf_LDADD = @LIBM_LIB@ @PTHREAD_LIBS@ @GLIB_LIBS@ @PANEL_LIB@ @CURSES_LIB@ @HAMLIB_LIBS@ \ +- @LIBXMLRPC_LIB@ @LIBXMLRPC_CLIENT_LIB@ @LIBXMLRPC_UTIL_LIB@ ++tlf_LDADD = @LIBM_LIB@ @PTHREAD_LIBS@ @GLIB_LIBS@ @PANEL_LIBS@ @CURSES_LIBS@ \ ++ @HAMLIB_LIBS@ @LIBXMLRPC_LIB@ @LIBXMLRPC_CLIENT_LIB@ \ ++ @LIBXMLRPC_UTIL_LIB@ + + noinst_HEADERS = \ + addarea.h addcall.h addmult.h addpfx.h addspot.h audio.h autocq.h \ diff --git a/media-radio/tlf/tlf-1.2.4.1.ebuild b/media-radio/tlf/tlf-1.2.4.1.ebuild index ba691faa9e32..19ea920ae8c0 100644 --- a/media-radio/tlf/tlf-1.2.4.1.ebuild +++ b/media-radio/tlf/tlf-1.2.4.1.ebuild @@ -4,7 +4,7 @@ EAPI="5" -inherit flag-o-matic multilib +inherit autotools eutils flag-o-matic multilib DESCRIPTION="Console-mode amateur radio contest logger" HOMEPAGE="http://home.iae.nl/users/reinc/TLF-0.2.html" @@ -22,6 +22,11 @@ RDEPEND="sys-libs/ncurses:= dev-libs/xmlrpc-c[curl]" DEPEND="${RDEPEND}" +src_prepare() { + epatch "${FILESDIR}/ncurses_tinfo.patch" + eautoreconf +} + src_configure() { append-ldflags -L/usr/$(get_libdir)/hamlib econf --docdir=/usr/share/doc/${PF} --enable-hamlib --enable-fldigi-xmlrpc diff --git a/media-radio/tlf/tlf-1.2.4.5.ebuild b/media-radio/tlf/tlf-1.2.4.5.ebuild index ff13bba6cbbf..3bcb85227569 100644 --- a/media-radio/tlf/tlf-1.2.4.5.ebuild +++ b/media-radio/tlf/tlf-1.2.4.5.ebuild @@ -4,7 +4,7 @@ EAPI="5" -inherit flag-o-matic multilib +inherit autotools eutils flag-o-matic multilib DESCRIPTION="Console-mode amateur radio contest logger" HOMEPAGE="http://home.iae.nl/users/reinc/TLF-0.2.html" @@ -22,6 +22,11 @@ RDEPEND="sys-libs/ncurses:= dev-libs/xmlrpc-c[curl]" DEPEND="${RDEPEND}" +src_prepare() { + epatch "${FILESDIR}/ncurses_tinfo.patch" + eautoreconf +} + src_configure() { append-ldflags -L/usr/$(get_libdir)/hamlib econf --docdir=/usr/share/doc/${PF} --enable-hamlib --enable-fldigi-xmlrpc |