diff options
author | Viorel Munteanu <ceamac@gentoo.org> | 2022-11-13 20:12:30 +0200 |
---|---|---|
committer | Viorel Munteanu <ceamac@gentoo.org> | 2022-11-15 07:32:39 +0200 |
commit | bc257c9a3f6e30f1d1d1204ef2edb3a9a94a1b26 (patch) | |
tree | c6434c9a87697b07dcfd75c6dc2ccf647e105b1d /net-ftp | |
parent | media-libs/libpgf: Fix installation with USE=doc (diff) | |
download | gentoo-bc257c9a3f6e30f1d1d1204ef2edb3a9a94a1b26.tar.gz gentoo-bc257c9a3f6e30f1d1d1204ef2edb3a9a94a1b26.tar.bz2 gentoo-bc257c9a3f6e30f1d1d1204ef2edb3a9a94a1b26.zip |
net-ftp/ncftp: fix compilation with clang
Closes: https://bugs.gentoo.org/875458
Closes: https://github.com/gentoo/gentoo/pull/28258
Signed-off-by: Viorel Munteanu <ceamac@gentoo.org>
Diffstat (limited to 'net-ftp')
-rw-r--r-- | net-ftp/ncftp/files/ncftp-3.2.6-fix-clang.patch | 437 | ||||
-rw-r--r-- | net-ftp/ncftp/ncftp-3.2.6-r5.ebuild | 58 |
2 files changed, 495 insertions, 0 deletions
diff --git a/net-ftp/ncftp/files/ncftp-3.2.6-fix-clang.patch b/net-ftp/ncftp/files/ncftp-3.2.6-fix-clang.patch new file mode 100644 index 000000000000..21b4a5601d36 --- /dev/null +++ b/net-ftp/ncftp/files/ncftp-3.2.6-fix-clang.patch @@ -0,0 +1,437 @@ +Fix compilation with clang-16 + +aclocal.m4 contains code that no longer compiles: missing headers and missing +return types. + +--- a/autoconf_local/aclocal.m4 ++++ b/autoconf_local/aclocal.m4 +@@ -192,6 +192,7 @@ + #include "pchtest.h" + #pragma hdrstop + #include <stdarg.h> ++#include <stdlib.h> + + int main(int argc, char **argv) + { +@@ -1242,7 +1243,9 @@ + AC_MSG_CHECKING([if -D__STDC_EXT__ is needed with GCC on HP-UX]) + AC_TRY_RUN([ + #include <stdio.h> ++#include <stdlib.h> + ++int + main() + { + #ifdef __STDC_EXT__ +@@ -1674,7 +1677,9 @@ + #include <sys/types.h> + #include <sys/stat.h> + #include <stdio.h> ++#include <stdlib.h> + ++int + main() + { + int result; +@@ -1816,6 +1821,7 @@ + # include <snprintf.h> + #endif + ++int + main() + { + char s[16]; +@@ -1876,6 +1882,7 @@ + # include <snprintf.h> + #endif + ++int + main() + { + int result; +@@ -2004,7 +2011,9 @@ + #ifdef HAVE_SYS_UN_H + #include <sys/un.h> + #endif ++#include <stdlib.h> + ++int + main() + { + int sfd; +@@ -2088,7 +2097,9 @@ + #include <sys/socket.h> + #include <netinet/in.h> + #include <netdb.h> ++#include <stdlib.h> + ++int + main() + { + struct hostent *hp1, *hp2; +@@ -2134,6 +2145,7 @@ + #endif + #include <sys/types.h> + #include <stdio.h> ++#include <stdlib.h> + + /* These are needed if libwrap.a was compiled with + * PROCESS_OPTIONS defined. +@@ -2238,6 +2250,7 @@ + #include <stdio.h> + #include <signal.h> + #include <setjmp.h> ++#include <stdlib.h> + ],[ + /* function-body */ + sigjmp_buf sjb; +@@ -2265,6 +2278,7 @@ + #include <unistd.h> + #include <sys/types.h> + #include <utmp.h> ++#include <stdlib.h> + ],[ + struct utmp u; + +@@ -2288,6 +2302,7 @@ + #include <unistd.h> + #include <sys/types.h> + #include <utmp.h> ++#include <stdlib.h> + ],[ + struct utmp u; + +@@ -2311,6 +2326,7 @@ + #include <unistd.h> + #include <sys/types.h> + #include <utmpx.h> ++#include <stdlib.h> + ],[ + struct utmpx u; + +@@ -2334,6 +2350,7 @@ + #include <unistd.h> + #include <sys/types.h> + #include <utmpx.h> ++#include <stdlib.h> + ],[ + struct utmpx u; + +@@ -2357,6 +2374,7 @@ + #include <unistd.h> + #include <sys/types.h> + #include <utmpx.h> ++#include <stdlib.h> + ],[ + struct utmpx u; + +@@ -2380,6 +2398,7 @@ + #include <unistd.h> + #include <sys/types.h> + #include <utmp.h> ++#include <stdlib.h> + ],[ + struct utmp u; + +@@ -2403,6 +2422,7 @@ + #include <unistd.h> + #include <sys/types.h> + #include <utmp.h> ++#include <stdlib.h> + ],[ + struct utmp u; + +@@ -2427,6 +2447,7 @@ + #include <unistd.h> + #include <sys/types.h> + #include <utmp.h> ++#include <stdlib.h> + ],[ + struct utmp u; + +@@ -2450,6 +2471,7 @@ + #include <unistd.h> + #include <sys/types.h> + #include <utmp.h> ++#include <stdlib.h> + ],[ + struct utmp u; + +@@ -2482,6 +2504,7 @@ + #include <stdio.h> + #include <stdlib.h> + ++int + main() + { + size_t x = 0; +@@ -2545,6 +2568,7 @@ + #include <stdio.h> + #include <stdlib.h> + ++int + main() + { + off_t x = 0; +@@ -2608,6 +2632,7 @@ + #include <stdio.h> + #include <stdlib.h> + ++int + main() + { + struct stat x; +@@ -2671,6 +2696,7 @@ + #include <stdio.h> + #include <stdlib.h> + ++int + main() + { + off64_t x = 0; +@@ -2732,6 +2758,7 @@ + #include <stdio.h> + #include <stdlib.h> + ++int + main() + { + struct stat64 x; +@@ -2789,6 +2816,7 @@ + #include <unistd.h> + #include <sys/types.h> + #include <sys/stat.h> ++#include <stdlib.h> + ],[ + struct stat64 st; + +@@ -2815,6 +2843,7 @@ + #include <sys/uio.h> + #include <sys/socket.h> + #include <sys/un.h> ++#include <stdlib.h> + ],[ + struct cmsghdr cm; + +@@ -2844,6 +2873,7 @@ + #include <sys/uio.h> + #include <sys/socket.h> + #include <sys/un.h> ++#include <stdlib.h> + ],[ + struct msghdr m; + +@@ -2872,6 +2902,7 @@ + #include <sys/uio.h> + #include <sys/socket.h> + #include <sys/un.h> ++#include <stdlib.h> + ],[ + struct msghdr m; + +@@ -2975,6 +3006,8 @@ + #include <sys/uio.h> + #include <sys/socket.h> + #include <sys/un.h> ++#include <stdlib.h> ++#include <string.h> + ],[ + struct sockaddr_un uaddr; + +@@ -3004,6 +3037,7 @@ + #elif defined(HAVE_SYS_VFS_H) + # include <sys/vfs.h> + #endif ++#include <stdlib.h> + ],[ + struct statfs st; + +@@ -3027,6 +3061,7 @@ + #include <unistd.h> + #include <sys/types.h> + #include <sys/statvfs.h> ++#include <stdlib.h> + ],[ + struct statvfs st; + +@@ -3049,7 +3084,9 @@ + /* program */ + #include <stdio.h> + #include <string.h> ++#include <stdlib.h> + ++int + main() + { + int result; +@@ -3108,9 +3145,11 @@ + #endif + #include <stdio.h> + #include <string.h> ++#include <stdlib.h> + + extern char *crypt(const char *key, const char *salt); + ++int + main() + { + char cleartext[256]; +@@ -3182,6 +3221,7 @@ + #include <sys/socket.h> + #include <arpa/inet.h> + #include <netinet/in.h> ++#include <string.h> + #ifdef HAVE_ARPA_NAMESER_H + # include <arpa/nameser.h> + #endif +@@ -3327,9 +3367,11 @@ + #include <unistd.h> + #include <sys/types.h> + #include <stdio.h> ++#include <stdlib.h> + + extern char *rl_library_version; + ++int + main() + { + FILE *fp; +@@ -3446,9 +3488,11 @@ + #endif + #include <sys/types.h> + #include <stdio.h> ++#include <stdlib.h> + + long long hugeNumvar = 1; + ++int + main() + { + long long hugeNumtoo = 2; +@@ -3495,6 +3539,7 @@ + #include <string.h> + #include <stdlib.h> + ++int + main() + { + char s[80]; +@@ -3536,6 +3581,7 @@ + #include <string.h> + #include <stdlib.h> + ++int + main() + { + char s[80]; +@@ -3585,6 +3631,7 @@ + #include <string.h> + #include <stdlib.h> + ++int + main() + { + long long hugeNum, justAsHugeNum; +@@ -3629,6 +3676,7 @@ + #include <string.h> + #include <stdlib.h> + ++int + main() + { + long long hugeNum, justAsHugeNum; +@@ -4076,7 +4124,7 @@ + #include <sys/select.h> + #endif + #include <sys/socket.h> /* MG: always incl */ +-extern select ($ac_cv_func_select_arg1,$ac_cv_func_select_arg234,$ac_cv_func_select_arg234,$ac_cv_func_select_arg234,$ac_cv_func_select_arg5);],,dnl ++extern int select ($ac_cv_func_select_arg1,$ac_cv_func_select_arg234,$ac_cv_func_select_arg234,$ac_cv_func_select_arg234,$ac_cv_func_select_arg5);],,dnl + [ac_not_found=no ; break 3],ac_not_found=yes) + done + done +@@ -4226,7 +4274,9 @@ + #include <netinet/in.h> + #include <arpa/inet.h> + #include <netdb.h> ++#include <stdlib.h> + ++int + main() + { + exit(0); +@@ -5023,6 +5073,7 @@ + /* includes */ + #include <stdio.h> + #include <stdlib.h> ++#include <string.h> + + #ifdef HAVE_NCURSES_H + # define NCURSES_OPAQUE 0 +@@ -5054,6 +5105,7 @@ + #endif + + ++int + main(int argc, char **argv) + { + /* Note: don't actually call curses, since it may block; +@@ -5142,6 +5194,7 @@ + # include <curses.h> + #endif + ++int + main() + { + exit(0); +@@ -5809,7 +5862,9 @@ + cat <<EOF > "$vertest.c" + #include <stdio.h> + #include <gnu/libc-version.h> ++#include <stdlib.h> + ++int + main() + { + const char *ver = gnu_get_libc_version(); +@@ -5957,6 +6012,7 @@ + #include <stdlib.h> + #include <ctype.h> + ++int + main() + { + char line[256], *cp, *cp2; +@@ -6109,6 +6165,7 @@ + #include <stdio.h> + #include <stdlib.h> + ++int + main() + { + FILE *fp; +@@ -6166,6 +6223,7 @@ + #include <stdio.h> + #include <stdlib.h> + ++int + main() + { + struct stat x; +@@ -6224,6 +6282,7 @@ + #include <stdio.h> + #include <stdlib.h> + ++int + main() + { + struct stat64 x; +@@ -6457,7 +6516,8 @@ + ac_cv_func_setvbuf_reversed, + [AC_TRY_RUN([#include <stdio.h> + /* If setvbuf has the reversed format, exit 0. */ +- main () { ++ #include <stdlib.h> ++ int main () { + /* This call has the arguments reversed. + A reversed system may check and see that the address of main + is not _IOLBF, _IONBF, or _IOFBF, and return nonzero. */ diff --git a/net-ftp/ncftp/ncftp-3.2.6-r5.ebuild b/net-ftp/ncftp/ncftp-3.2.6-r5.ebuild new file mode 100644 index 000000000000..c0eb310662c3 --- /dev/null +++ b/net-ftp/ncftp/ncftp-3.2.6-r5.ebuild @@ -0,0 +1,58 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 +inherit autotools toolchain-funcs + +DESCRIPTION="An extremely configurable ftp client" +HOMEPAGE="https://www.ncftp.com/" +SRC_URI=" + https://ftp.mirrorservice.org/sites/ftp.${PN}.com/${PN}/${P}-src.tar.xz +" + +LICENSE="Clarified-Artistic" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~x86-solaris" +IUSE="pch" + +DEPEND=" + sys-libs/ncurses:= +" +RDEPEND=" + ${DEPEND} +" +BDEPEND=" + virtual/pkgconfig +" + +PATCHES=( + "${FILESDIR}"/${PN}-3.2.6-fno-common.patch + "${FILESDIR}"/${PN}-3.2.6-fix-clang.patch # 875458 +) + +src_prepare() { + default + + sed -i -e '/^AR=/d' autoconf_local/aclocal.m4 || die + # 727774 + sed -i -e 's/STRIP=".*"/STRIP=":"/' autoconf_local/aclocal.m4 || die + + AT_M4DIR=autoconf_local/ eautoreconf +} + +src_configure() { + tc-export AR CC + LC_ALL="C" \ + LIBS="$( $(tc-getPKG_CONFIG) --libs ncurses)" \ + econf \ + $(use_enable pch precomp) \ + --disable-ccdv \ + --disable-universal +} + +src_install() { + default + dodoc README.txt doc/*.txt + docinto html + dodoc doc/html/*.html +} |