diff options
Diffstat (limited to 'dev-tcltk/expect')
-rw-r--r-- | dev-tcltk/expect/Manifest | 8 | ||||
-rw-r--r-- | dev-tcltk/expect/expect-5.45.ebuild | 83 | ||||
-rw-r--r-- | dev-tcltk/expect/files/expect-5.44.1.15-ldflags.patch | 13 | ||||
-rw-r--r-- | dev-tcltk/expect/files/expect-5.45-darwin-install_name.patch | 13 | ||||
-rw-r--r-- | dev-tcltk/expect/files/expect-5.45-format-security.patch | 18 | ||||
-rw-r--r-- | dev-tcltk/expect/files/expect-5.45-gfbsd.patch | 26 | ||||
-rw-r--r-- | dev-tcltk/expect/files/expect-5.45-headers.patch | 92 | ||||
-rw-r--r-- | dev-tcltk/expect/metadata.xml | 11 |
8 files changed, 264 insertions, 0 deletions
diff --git a/dev-tcltk/expect/Manifest b/dev-tcltk/expect/Manifest new file mode 100644 index 000000000000..3d883e319e5c --- /dev/null +++ b/dev-tcltk/expect/Manifest @@ -0,0 +1,8 @@ +AUX expect-5.44.1.15-ldflags.patch 360 BLAKE2B d479931cb0d8621d196b8dac3b0f7134f2998061e26f39d06165d71dc00c15895290edf552ee1258c5f988845e6a0b3c5d1df3c694433ef185689ff1d41a96d6 SHA512 36c62ec8043249ae0b9b0c4470937cc99b31c4845d5e67e37403f7e9d97be9edb37dc0a5c8abd2df50cace62b0d87303dbc62fdd2a3e87b501d2b983460ab75f +AUX expect-5.45-darwin-install_name.patch 727 BLAKE2B fca6df8c6d01bd54f26e6a2311f61b70e4e45daaa01e7d1165f04bdba7232e36e1c5ac409faf99cb8a03f5227c829bd93cc00d248129e2ebdaccae8657cb11d1 SHA512 886d378caa8d63add7d4ac73c90b53b4b30d642a2a5cf06c80aad87f57d49a3362bf506fe12f6aade77c56b8b4c83ffe18138143cdf0fe5d7e9e2d673f2bc6d5 +AUX expect-5.45-format-security.patch 428 BLAKE2B 98e4d1da9f790bb1ab1b0b8481c5c0a747823f0998fff7993316d44cd5b29659467901c9f2e78d6b77342a9f0cb9072730a8600240fa37f240e10cc677162f63 SHA512 b85f0985b908f72d960eeb00567caab048874806c68d259835dc4564e33032524e9026e07ece3ad5f8669d67f7976019efb5dd763ba84b4cc13571ca999c7f06 +AUX expect-5.45-gfbsd.patch 996 BLAKE2B 46183afae664e2995403e36b423e0576022063d8acfb681dd98d6e98e54c86588f0e74067b929fe105bc477fedd8709b749857dcdaf5e57fa28445dad34c4139 SHA512 4fa7c4723c9ad2f5811c5762abe202f1d7584a6050c75cab277fe1b6c697809204a9adcf6f6f6c3c215c8df32f3ac9b083da907777b1ea02e1a4e64b8bf91242 +AUX expect-5.45-headers.patch 2280 BLAKE2B 6326615eee52aaa7307b32d048af21d657cb308e737995944b7e081a06a4d6b6f3409836b28835e6534ef57215542b524061cb731be3b419b23ab2ba38184079 SHA512 ac55ec9d65e87d5c64327d802fa16eab9f218f71e760090b2afc00b5fdb791859e6d1f35b0d1a5f52e7ff6ffb21e538581a1782976754fe8ae3ca5950c8db55c +DIST expect5.45.tar.gz 628808 BLAKE2B d7260d3b2ce1bcd72deef121e1f994f45bfa5397291692d794c9b8ad627d7ac183689ba00ba22f728853ac03b6b083fb6f283dc5c453aa991e04263c217be552 SHA512 be991c68241e607b3a689eae7e7966056dbfb577e857331d54a4911bd178c1816425217603b43918ad1b6d2e966271a0f01e79d7028a22e223562d59d10c8c51 +EBUILD expect-5.45.ebuild 2323 BLAKE2B a7ddc999f1d2c1b3c8f1a8c5983b94c89e4a4e8dcc3d06e229b63f359d41ea108c3f2d7d92d2427e6ada3fa01c840cc233cc839335d21c41be67cf84378b9808 SHA512 bfef9b4a10fa57845aa223962a457949db55fdcd41fdb507c9413f4fd223bfe37a5cee231394912d0d919dc10641e9f6908cf445e508fc794b5d2dc4c10d3582 +MISC metadata.xml 329 BLAKE2B 9eebe793b4602782f9bd2db8dd7a0cfdfdab3f89400f3ececcf25862220c47e78feebc579b468ae5dc44ae482b8a69f844f141a2f535fbd61dec73f11c8eea83 SHA512 cd5b6144b39381b2b69791171489dd907c3d779ae488b361f744ffacb2459b0c72cb70a72a85dce6bd7a25774e1a42da511dd0d041b25580bf243a515095f3d1 diff --git a/dev-tcltk/expect/expect-5.45.ebuild b/dev-tcltk/expect/expect-5.45.ebuild new file mode 100644 index 000000000000..bfcd37e9d3e4 --- /dev/null +++ b/dev-tcltk/expect/expect-5.45.ebuild @@ -0,0 +1,83 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=5 + +inherit autotools eutils + +MY_P="${PN}${PV}" +DESCRIPTION="tool for automating interactive applications" +HOMEPAGE="http://expect.nist.gov/" +SRC_URI="mirror://sourceforge/${PN}/${MY_P}.tar.gz" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="alpha amd64 arm arm64 hppa ia64 ~m68k ~mips ppc ppc64 s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~x64-macos ~x86-macos ~m68k-mint ~x64-solaris ~x86-solaris" +IUSE="debug doc threads" + +# We need dejagnu for src_test, but dejagnu needs expect +# to compile/run, so we cant add dejagnu to DEPEND :/ +DEPEND=">=dev-lang/tcl-8.2:0[threads?]" +RDEPEND="${DEPEND}" + +S=${WORKDIR}/${MY_P} + +src_prepare() { + sed -i "s:/usr/local/bin:${EPREFIX}/usr/bin:" expect.man || die + # stops any example scripts being installed by default + sed -i \ + -e 's/^SCRIPT_LIST[[:space:]]*=/_&/' \ + -e 's/^SCRIPTS[[:space:]]*=/_&/' \ + -e 's/^SCRIPTS_MANPAGES[[:space:]]*=/_&/' \ + Makefile.in || die + + epatch "${FILESDIR}"/${PN}-5.45-gfbsd.patch + epatch "${FILESDIR}"/${PN}-5.44.1.15-ldflags.patch + epatch "${FILESDIR}"/${PN}-5.45-headers.patch #337943 + epatch "${FILESDIR}"/${PN}-5.45-format-security.patch + sed -i 's:ifdef HAVE_SYS_WAIT_H:ifndef NO_SYS_WAIT_H:' *.c + + # fix install_name on darwin + [[ ${CHOST} == *-darwin* ]] && \ + epatch "${FILESDIR}"/${P}-darwin-install_name.patch + + mv configure.{in,ac} || die + + eautoconf +} + +src_configure() { + # the 64bit flag is useless ... it only adds 64bit compiler flags + # (like -m64) which the target toolchain should already handle + econf \ + --with-tcl="${EPREFIX}/usr/$(get_libdir)" \ + --disable-64bit \ + --enable-shared \ + $(use_enable threads) \ + $(use_enable debug symbols mem) +} + +src_test() { + # we need dejagnu to do tests ... but dejagnu needs + # expect ... so don't do tests unless we have dejagnu + type -p runtest || return 0 + emake test +} + +expect_make_var() { + touch pkgIndex.tcl-hand + printf 'all:;echo $('$1')\ninclude Makefile' | emake --no-print-directory -s -f - + rm -f pkgIndex.tcl-hand || die +} + +src_install() { + default + + if use doc ; then + docinto examples + dodoc \ + example/README \ + $(printf 'example/%s ' $(expect_make_var _SCRIPTS)) \ + $(printf 'example/%s.man ' $(expect_make_var _SCRIPTS_MANPAGES)) + fi +} diff --git a/dev-tcltk/expect/files/expect-5.44.1.15-ldflags.patch b/dev-tcltk/expect/files/expect-5.44.1.15-ldflags.patch new file mode 100644 index 000000000000..be3641c2105c --- /dev/null +++ b/dev-tcltk/expect/files/expect-5.44.1.15-ldflags.patch @@ -0,0 +1,13 @@ +diff --git a/Makefile.in b/Makefile.in +index cc2c79b..1083eaf 100644 +--- a/Makefile.in ++++ b/Makefile.in +@@ -148,7 +148,7 @@ OBJEXT = @OBJEXT@ + RANLIB = @RANLIB@ + RANLIB_STUB = @RANLIB_STUB@ + SHLIB_CFLAGS = @SHLIB_CFLAGS@ +-SHLIB_LD = @SHLIB_LD@ ++SHLIB_LD = @SHLIB_LD@ $(LDFLAGS) + SHLIB_LD_LIBS = @SHLIB_LD_LIBS@ + STLIB_LD = @STLIB_LD@ + TCL_DEFS = @TCL_DEFS@ diff --git a/dev-tcltk/expect/files/expect-5.45-darwin-install_name.patch b/dev-tcltk/expect/files/expect-5.45-darwin-install_name.patch new file mode 100644 index 000000000000..f5470aadb88e --- /dev/null +++ b/dev-tcltk/expect/files/expect-5.45-darwin-install_name.patch @@ -0,0 +1,13 @@ +Add install_name (soname) + +--- tclconfig/tcl.m4 ++++ tclconfig/tcl.m4 +@@ -1703,7 +1703,7 @@ + ]) + # TEA specific: link shlib with current and compatiblity version flags + vers=`echo ${PACKAGE_VERSION} | sed -e 's/^\([[0-9]]\{1,5\}\)\(\(\.[[0-9]]\{1,3\}\)\{0,2\}\).*$/\1\2/p' -e d` +- SHLIB_LD="${SHLIB_LD} -current_version ${vers:-0} -compatibility_version ${vers:-0}" ++ SHLIB_LD="${SHLIB_LD} -install_name \$(pkglibdir)/\$(PKG_LIB_FILE) -current_version ${vers:-0} -compatibility_version ${vers:-0}" + SHLIB_SUFFIX=".dylib" + # Don't use -prebind when building for Mac OS X 10.4 or later only: + AS_IF([test "`echo "${MACOSX_DEPLOYMENT_TARGET}" | awk -F '10\\.' '{print int([$]2)}'`" -lt 4 -a \ diff --git a/dev-tcltk/expect/files/expect-5.45-format-security.patch b/dev-tcltk/expect/files/expect-5.45-format-security.patch new file mode 100644 index 000000000000..c623264be27a --- /dev/null +++ b/dev-tcltk/expect/files/expect-5.45-format-security.patch @@ -0,0 +1,18 @@ + exp_clib.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/exp_clib.c b/exp_clib.c +index 172c05e..c86dda4 100644 +--- a/exp_clib.c ++++ b/exp_clib.c +@@ -1476,8 +1476,8 @@ expDiagLogU(str) + char *str; + { + if (exp_is_debugging) { +- fprintf(stderr,str); +- if (exp_logfile) fprintf(exp_logfile,str); ++ fprintf(stderr,"%s", str); ++ if (exp_logfile) fprintf(exp_logfile,"%s", str); + } + } + diff --git a/dev-tcltk/expect/files/expect-5.45-gfbsd.patch b/dev-tcltk/expect/files/expect-5.45-gfbsd.patch new file mode 100644 index 000000000000..5ae9c26adb88 --- /dev/null +++ b/dev-tcltk/expect/files/expect-5.45-gfbsd.patch @@ -0,0 +1,26 @@ +--- a/tclconfig/tcl.m4 ++++ b/tclconfig/tcl.m4 +@@ -1634,20 +1634,15 @@ dnl AC_CHECK_TOOL(AR, ar) + SHLIB_LD="${CC} -shared" + TCL_SHLIB_LD_EXTRAS="-soname \$[@]" + SHLIB_SUFFIX=".so" +- LDFLAGS="" ++ LDFLAGS="$LDFLAGS -Wl,--export-dynamic" + AS_IF([test $doRpath = yes], [ +- CC_SEARCH_FLAGS='-Wl,-rpath,${LIB_RUNTIME_DIR}' +- LD_SEARCH_FLAGS='-rpath ${LIB_RUNTIME_DIR}']) ++ CC_SEARCH_FLAGS='-Wl,-rpath,${LIB_RUNTIME_DIR}']) ++ LD_SEARCH_FLAGS=${CC_SEARCH_FLAGS} + AS_IF([test "${TCL_THREADS}" = "1"], [ + # The -pthread needs to go in the LDFLAGS, not LIBS + LIBS=`echo $LIBS | sed s/-pthread//` + CFLAGS="$CFLAGS $PTHREAD_CFLAGS" + LDFLAGS="$LDFLAGS $PTHREAD_LIBS"]) +- # Version numbers are dot-stripped by system policy. +- TCL_TRIM_DOTS=`echo ${VERSION} | tr -d .` +- UNSHARED_LIB_SUFFIX='${TCL_TRIM_DOTS}.a' +- SHARED_LIB_SUFFIX='${TCL_TRIM_DOTS}\$\{DBGX\}.so.1' +- TCL_LIB_VERSIONS_OK=nodots + ;; + Darwin-*) + CFLAGS_OPTIMIZE="-Os" diff --git a/dev-tcltk/expect/files/expect-5.45-headers.patch b/dev-tcltk/expect/files/expect-5.45-headers.patch new file mode 100644 index 000000000000..98330211b328 --- /dev/null +++ b/dev-tcltk/expect/files/expect-5.45-headers.patch @@ -0,0 +1,92 @@ +https://sourceforge.net/tracker/?func=detail&aid=3071706&group_id=13179&atid=113179 +--- a/configure.in ++++ b/configure.in +@@ -133,6 +133,8 @@ AC_CHECK_HEADER(sys/fcntl.h, AC_DEFINE(HAVE_SYS_FCNTL_H)) + AC_CHECK_HEADER(sys/ptem.h, AC_DEFINE(HAVE_SYS_PTEM_H)) + AC_CHECK_HEADER(sys/strredir.h, AC_DEFINE(HAVE_STRREDIR_H)) + AC_CHECK_HEADER(sys/strpty.h, AC_DEFINE(HAVE_STRPTY_H)) ++AC_CHECK_HEADER(pty.h, AC_DEFINE(HAVE_PTY_H)) ++AC_CHECK_HEADER(libutil.h, AC_DEFINE(HAVE_LIBUTIL_H)) + + AC_MSG_CHECKING([for sys/bsdtypes.h]) + if test "ISC_${ISC}" = "ISC_1" ; then +--- a/exp_clib.c ++++ b/exp_clib.c +@@ -15,6 +15,12 @@ + #endif + #include <sys/types.h> + #include <sys/ioctl.h> ++#ifdef HAVE_UNISTD_H ++# include <unistd.h> ++#endif ++#ifdef HAVE_SYS_WAIT_H ++#include <sys/wait.h> ++#endif + + #ifdef TIME_WITH_SYS_TIME + # include <sys/time.h> +--- a/exp_trap.c ++++ b/exp_trap.c +@@ -13,6 +13,7 @@ + #include <stdio.h> + #include <signal.h> + #include <sys/types.h> ++#include <string.h> + + #ifdef HAVE_SYS_WAIT_H + #include <sys/wait.h> +--- a/pty_termios.c ++++ b/pty_termios.c +@@ -9,6 +9,14 @@ + + #include <stdio.h> + #include <signal.h> ++#include <string.h> ++#ifdef HAVE_PTY_H ++#include <pty.h> ++#endif ++#ifdef HAVE_LIBUTIL_H ++#include <sys/types.h> ++#include <libutil.h> ++#endif + + #if defined(SIGCLD) && !defined(SIGCHLD) + #define SIGCHLD SIGCLD +@@ -100,6 +100,7 @@ + + #include "exp_tty_in.h" + #include "exp_rename.h" ++#include "exp_int.h" + #include "exp_pty.h" + + void expDiagLog(); +--- a/exp_chan.c ++++ b/exp_chan.c +@@ -34,6 +34,7 @@ + #include "exp_rename.h" + #include "exp_prog.h" + #include "exp_command.h" ++#include "exp_event.h" + #include "exp_log.h" + #include "tcldbg.h" /* Dbg_StdinMode */ + +--- a/exp_clib.c ++++ b/exp_clib.c +@@ -1955,6 +1955,7 @@ + + #include "expect.h" + #include "exp_int.h" ++EXTERN void exp_init_tty _ANSI_ARGS_((void)); + + /* exp_glob.c - expect functions for doing glob + * +--- a/exp_tty.h ++++ b/exp_tty.h +@@ -17,6 +17,7 @@ + + void exp_tty_raw(int set); + void exp_tty_echo(int set); ++int exp_tty_cooked_echo(Tcl_Interp *interp, exp_tty *tty_old, int *was_raw, int *was_echo); + void exp_tty_break(Tcl_Interp *interp, int fd); + int exp_tty_raw_noecho(Tcl_Interp *interp, exp_tty *tty_old, int *was_raw, int *was_echo); + int exp_israw(void); diff --git a/dev-tcltk/expect/metadata.xml b/dev-tcltk/expect/metadata.xml new file mode 100644 index 000000000000..67378c136485 --- /dev/null +++ b/dev-tcltk/expect/metadata.xml @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>tcltk@gentoo.org</email> + <name>Gentoo Tcltk Project</name> + </maintainer> + <upstream> + <remote-id type="sourceforge">expect</remote-id> + </upstream> +</pkgmetadata> |