diff options
author | Richard Purdie <richard@openedhand.com> | 2005-09-27 09:46:17 +0000 |
---|---|---|
committer | Richard Purdie <richard@openedhand.com> | 2005-09-27 09:46:17 +0000 |
commit | 607b12a07ca910916aa50b0d66d3852785edcd99 (patch) | |
tree | 5584ce8247de739f939d1d77765b04efe905e7ec | |
parent | 4a6c9c2ca185c81cc2617a8d7ec7f02eb8eb1a4c (diff) | |
download | openembedded-core-607b12a07ca910916aa50b0d66d3852785edcd99.tar.gz openembedded-core-607b12a07ca910916aa50b0d66d3852785edcd99.tar.bz2 openembedded-core-607b12a07ca910916aa50b0d66d3852785edcd99.zip |
Add strace, gdb and readline. Update meta-oh.bb to match this.
git-svn-id: https://svn.o-hand.com/repos/poky@38 311d38ba-8fff-0310-9ca6-ca027cbcb966
-rw-r--r-- | openembedded/packages/gdb/files/gdbserver-cflags-last.diff | 13 | ||||
-rw-r--r-- | openembedded/packages/gdb/files/libiberty-cross.patch | 630 | ||||
-rw-r--r-- | openembedded/packages/gdb/files/sim-install.patch | 34 | ||||
-rw-r--r-- | openembedded/packages/gdb/files/uclibc.patch | 194 | ||||
-rw-r--r-- | openembedded/packages/gdb/gdb-6.3/uclibc.patch | 194 | ||||
-rw-r--r-- | openembedded/packages/gdb/gdb-cross_6.3.bb | 36 | ||||
-rw-r--r-- | openembedded/packages/gdb/gdb_6.3.bb | 48 | ||||
-rw-r--r-- | openembedded/packages/meta/meta-oh.bb | 6 | ||||
-rw-r--r-- | openembedded/packages/readline/readline-4.3/acinclude.m4 | 1815 | ||||
-rw-r--r-- | openembedded/packages/readline/readline-4.3/shlink-termcap.patch | 45 | ||||
-rw-r--r-- | openembedded/packages/readline/readline-native_4.3.bb | 4 | ||||
-rw-r--r-- | openembedded/packages/readline/readline_4.3.bb | 46 | ||||
-rw-r--r-- | openembedded/packages/strace/strace-4.5.12/quota.patch | 10 | ||||
-rw-r--r-- | openembedded/packages/strace/strace/arm-syscallent.patch | 402 | ||||
-rw-r--r-- | openembedded/packages/strace/strace_4.5.12.bb | 13 |
15 files changed, 3487 insertions, 3 deletions
diff --git a/openembedded/packages/gdb/files/gdbserver-cflags-last.diff b/openembedded/packages/gdb/files/gdbserver-cflags-last.diff new file mode 100644 index 0000000000..42bd740a7c --- /dev/null +++ b/openembedded/packages/gdb/files/gdbserver-cflags-last.diff @@ -0,0 +1,13 @@ +--- gdb/gdbserver/Makefile.in.orig 2004-10-05 18:52:56.298419032 +0200 ++++ gdb/gdbserver/Makefile.in 2004-10-05 18:53:10.442268840 +0200 +@@ -97,8 +97,8 @@ + CFLAGS = @CFLAGS@ + + # INTERNAL_CFLAGS is the aggregate of all other *CFLAGS macros. +-INTERNAL_CFLAGS = $(WARN_CFLAGS) ${CFLAGS} ${GLOBAL_CFLAGS} \ +- ${PROFILE_CFLAGS} ${INCLUDE_CFLAGS} ${BFD_CFLAGS} ++INTERNAL_CFLAGS = $(WARN_CFLAGS) ${GLOBAL_CFLAGS} \ ++ ${PROFILE_CFLAGS} ${INCLUDE_CFLAGS} ${BFD_CFLAGS} ${CFLAGS} + + # LDFLAGS is specifically reserved for setting from the command line + # when running make. diff --git a/openembedded/packages/gdb/files/libiberty-cross.patch b/openembedded/packages/gdb/files/libiberty-cross.patch new file mode 100644 index 0000000000..0d1897f9e0 --- /dev/null +++ b/openembedded/packages/gdb/files/libiberty-cross.patch @@ -0,0 +1,630 @@ +--- libiberty/configure.in.old 2004-03-31 21:25:25.000000000 +0100 ++++ libiberty/configure.in 2004-03-31 21:18:02.000000000 +0100 +@@ -100,6 +100,7 @@ + AC_CHECK_TOOL(RANLIB, ranlib, :) + + LIB_AC_PROG_CC ++AC_PROG_CC_WORKS + + AC_PROG_CC_C_O + # autoconf is lame and doesn't give us any substitution variable for this. +@@ -402,7 +403,6 @@ + + # We haven't set the list of objects yet. Use the standard autoconf + # tests. This will only work if the compiler works. +- AC_PROG_CC_WORKS + AC_REPLACE_FUNCS($funcs) + libiberty_AC_FUNC_C_ALLOCA + AC_FUNC_VFORK + +--- libiberty/configure.old 2003-06-19 21:05:35.000000000 +0100 ++++ libiberty/configure 2004-03-31 21:35:12.000000000 +0100 +@@ -1000,13 +1000,60 @@ + fi + + ++echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works""... $ac_c" 1>&6 ++echo "configure:1005: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5 ++ ++ac_ext=c ++# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. ++ac_cpp='$CPP $CPPFLAGS' ++ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' ++ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' ++cross_compiling=$ac_cv_prog_cc_cross ++ ++cat > conftest.$ac_ext << EOF ++ ++#line 1016 "configure" ++#include "confdefs.h" ++ ++main(){return(0);} ++EOF ++if { (eval echo configure:1021: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then ++ ac_cv_prog_cc_works=yes ++ # If we can't run a trivial program, we are probably using a cross compiler. ++ if (./conftest; exit) 2>/dev/null; then ++ ac_cv_prog_cc_cross=no ++ else ++ ac_cv_prog_cc_cross=yes ++ fi ++else ++ echo "configure: failed program was:" >&5 ++ cat conftest.$ac_ext >&5 ++ ac_cv_prog_cc_works=no ++fi ++rm -fr conftest* ++ac_ext=c ++# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. ++ac_cpp='$CPP $CPPFLAGS' ++ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' ++ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' ++cross_compiling=$ac_cv_prog_cc_cross ++ ++echo "$ac_t""$ac_cv_prog_cc_works" 1>&6 ++if test $ac_cv_prog_cc_works = no; then ++ { echo "configure: error: installation or configuration problem: C compiler cannot create executables." 1>&2; exit 1; } ++fi ++echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6 ++echo "configure:1047: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5 ++echo "$ac_t""$ac_cv_prog_cc_cross" 1>&6 ++cross_compiling=$ac_cv_prog_cc_cross ++ + + if test "x$CC" != xcc; then + echo $ac_n "checking whether $CC and cc understand -c and -o together""... $ac_c" 1>&6 +-echo "configure:1007: checking whether $CC and cc understand -c and -o together" >&5 ++echo "configure:1054: checking whether $CC and cc understand -c and -o together" >&5 + else + echo $ac_n "checking whether cc understands -c and -o together""... $ac_c" 1>&6 +-echo "configure:1010: checking whether cc understands -c and -o together" >&5 ++echo "configure:1057: checking whether cc understands -c and -o together" >&5 + fi + set dummy $CC; ac_cc="`echo $2 | + sed -e 's/[^a-zA-Z0-9_]/_/g' -e 's/^[0-9]/_/'`" +@@ -1018,16 +1065,16 @@ + # We do the test twice because some compilers refuse to overwrite an + # existing .o file with -o, though they will create one. + ac_try='${CC-cc} -c conftest.c -o conftest.o 1>&5' +-if { (eval echo configure:1022: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } && +- test -f conftest.o && { (eval echo configure:1023: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; ++if { (eval echo configure:1069: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } && ++ test -f conftest.o && { (eval echo configure:1070: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; + then + eval ac_cv_prog_cc_${ac_cc}_c_o=yes + if test "x$CC" != xcc; then + # Test first that cc exists at all. +- if { ac_try='cc -c conftest.c 1>&5'; { (eval echo configure:1028: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; }; then ++ if { ac_try='cc -c conftest.c 1>&5'; { (eval echo configure:1075: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; }; then + ac_try='cc -c conftest.c -o conftest.o 1>&5' +- if { (eval echo configure:1030: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } && +- test -f conftest.o && { (eval echo configure:1031: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; ++ if { (eval echo configure:1077: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } && ++ test -f conftest.o && { (eval echo configure:1078: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; + then + # cc works too. + : +@@ -1063,7 +1110,7 @@ + + + echo $ac_n "checking for POSIXized ISC""... $ac_c" 1>&6 +-echo "configure:1067: checking for POSIXized ISC" >&5 ++echo "configure:1114: checking for POSIXized ISC" >&5 + if test -d /etc/conf/kconfig.d && + grep _POSIX_VERSION /usr/include/sys/unistd.h >/dev/null 2>&1 + then +@@ -1084,12 +1131,12 @@ + fi + + echo $ac_n "checking for working const""... $ac_c" 1>&6 +-echo "configure:1088: checking for working const" >&5 ++echo "configure:1135: checking for working const" >&5 + if eval "test \"`echo '$''{'ac_cv_c_const'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 + else + cat > conftest.$ac_ext <<EOF +-#line 1093 "configure" ++#line 1140 "configure" + #include "confdefs.h" + + int main() { +@@ -1138,7 +1185,7 @@ + + ; return 0; } + EOF +-if { (eval echo configure:1142: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then ++if { (eval echo configure:1189: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then + rm -rf conftest* + ac_cv_c_const=yes + else +@@ -1159,21 +1206,21 @@ + fi + + echo $ac_n "checking for inline""... $ac_c" 1>&6 +-echo "configure:1163: checking for inline" >&5 ++echo "configure:1210: checking for inline" >&5 + if eval "test \"`echo '$''{'ac_cv_c_inline'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 + else + ac_cv_c_inline=no + for ac_kw in inline __inline__ __inline; do + cat > conftest.$ac_ext <<EOF +-#line 1170 "configure" ++#line 1217 "configure" + #include "confdefs.h" + + int main() { + } $ac_kw foo() { + ; return 0; } + EOF +-if { (eval echo configure:1177: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then ++if { (eval echo configure:1224: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then + rm -rf conftest* + ac_cv_c_inline=$ac_kw; break + else +@@ -1199,14 +1246,14 @@ + esac + + echo $ac_n "checking whether byte ordering is bigendian""... $ac_c" 1>&6 +-echo "configure:1203: checking whether byte ordering is bigendian" >&5 ++echo "configure:1250: checking whether byte ordering is bigendian" >&5 + if eval "test \"`echo '$''{'ac_cv_c_bigendian'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 + else + ac_cv_c_bigendian=unknown + # See if sys/param.h defines the BYTE_ORDER macro. + cat > conftest.$ac_ext <<EOF +-#line 1210 "configure" ++#line 1257 "configure" + #include "confdefs.h" + #include <sys/types.h> + #include <sys/param.h> +@@ -1217,11 +1264,11 @@ + #endif + ; return 0; } + EOF +-if { (eval echo configure:1221: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then ++if { (eval echo configure:1268: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then + rm -rf conftest* + # It does; now see whether it defined to BIG_ENDIAN or not. + cat > conftest.$ac_ext <<EOF +-#line 1225 "configure" ++#line 1272 "configure" + #include "confdefs.h" + #include <sys/types.h> + #include <sys/param.h> +@@ -1232,7 +1279,7 @@ + #endif + ; return 0; } + EOF +-if { (eval echo configure:1236: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then ++if { (eval echo configure:1283: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then + rm -rf conftest* + ac_cv_c_bigendian=yes + else +@@ -1252,7 +1299,7 @@ + echo $ac_n "cross-compiling... " 2>&6 + else + cat > conftest.$ac_ext <<EOF +-#line 1256 "configure" ++#line 1303 "configure" + #include "confdefs.h" + main () { + /* Are we little or big endian? From Harbison&Steele. */ +@@ -1265,7 +1312,7 @@ + exit (u.c[sizeof (long) - 1] == 1); + } + EOF +-if { (eval echo configure:1269: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null ++if { (eval echo configure:1316: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null + then + ac_cv_c_bigendian=no + else +@@ -1283,7 +1330,7 @@ + echo "$ac_t""$ac_cv_c_bigendian" 1>&6 + if test $ac_cv_c_bigendian = unknown; then + echo $ac_n "checking to probe for byte ordering""... $ac_c" 1>&6 +-echo "configure:1287: checking to probe for byte ordering" >&5 ++echo "configure:1334: checking to probe for byte ordering" >&5 + + cat >conftest.c <<EOF + short ascii_mm[] = { 0x4249, 0x4765, 0x6E44, 0x6961, 0x6E53, 0x7953, 0 }; +@@ -1352,7 +1399,7 @@ + # SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" + # ./install, which can be erroneously created by make from ./install.sh. + echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6 +-echo "configure:1356: checking for a BSD compatible install" >&5 ++echo "configure:1403: checking for a BSD compatible install" >&5 + if test -z "$INSTALL"; then + if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +@@ -1413,7 +1460,7 @@ + # able to link anything, it had better be able to at least compile + # something. + echo $ac_n "checking how to run the C preprocessor""... $ac_c" 1>&6 +-echo "configure:1417: checking how to run the C preprocessor" >&5 ++echo "configure:1464: checking how to run the C preprocessor" >&5 + # On Suns, sometimes $CPP names a directory. + if test -n "$CPP" && test -d "$CPP"; then + CPP= +@@ -1428,13 +1475,13 @@ + # On the NeXT, cc -E runs the code through the compiler's parser, + # not just through cpp. + cat > conftest.$ac_ext <<EOF +-#line 1432 "configure" ++#line 1479 "configure" + #include "confdefs.h" + #include <assert.h> + Syntax Error + EOF + ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" +-{ (eval echo configure:1438: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ++{ (eval echo configure:1485: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } + ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` + if test -z "$ac_err"; then + : +@@ -1445,13 +1492,13 @@ + rm -rf conftest* + CPP="${CC-cc} -E -traditional-cpp" + cat > conftest.$ac_ext <<EOF +-#line 1449 "configure" ++#line 1496 "configure" + #include "confdefs.h" + #include <assert.h> + Syntax Error + EOF + ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" +-{ (eval echo configure:1455: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ++{ (eval echo configure:1502: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } + ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` + if test -z "$ac_err"; then + : +@@ -1462,13 +1509,13 @@ + rm -rf conftest* + CPP="${CC-cc} -nologo -E" + cat > conftest.$ac_ext <<EOF +-#line 1466 "configure" ++#line 1513 "configure" + #include "confdefs.h" + #include <assert.h> + Syntax Error + EOF + ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" +-{ (eval echo configure:1472: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ++{ (eval echo configure:1519: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } + ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` + if test -z "$ac_err"; then + : +@@ -1496,17 +1543,17 @@ + do + ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` + echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 +-echo "configure:1500: checking for $ac_hdr" >&5 ++echo "configure:1547: checking for $ac_hdr" >&5 + if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 + else + cat > conftest.$ac_ext <<EOF +-#line 1505 "configure" ++#line 1552 "configure" + #include "confdefs.h" + #include <$ac_hdr> + EOF + ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" +-{ (eval echo configure:1510: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ++{ (eval echo configure:1557: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } + ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` + if test -z "$ac_err"; then + rm -rf conftest* +@@ -1533,12 +1580,12 @@ + done + + echo $ac_n "checking for sys/wait.h that is POSIX.1 compatible""... $ac_c" 1>&6 +-echo "configure:1537: checking for sys/wait.h that is POSIX.1 compatible" >&5 ++echo "configure:1584: checking for sys/wait.h that is POSIX.1 compatible" >&5 + if eval "test \"`echo '$''{'ac_cv_header_sys_wait_h'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 + else + cat > conftest.$ac_ext <<EOF +-#line 1542 "configure" ++#line 1589 "configure" + #include "confdefs.h" + #include <sys/types.h> + #include <sys/wait.h> +@@ -1554,7 +1601,7 @@ + s = WIFEXITED (s) ? WEXITSTATUS (s) : 1; + ; return 0; } + EOF +-if { (eval echo configure:1558: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then ++if { (eval echo configure:1605: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then + rm -rf conftest* + ac_cv_header_sys_wait_h=yes + else +@@ -1575,12 +1622,12 @@ + fi + + echo $ac_n "checking whether time.h and sys/time.h may both be included""... $ac_c" 1>&6 +-echo "configure:1579: checking whether time.h and sys/time.h may both be included" >&5 ++echo "configure:1626: checking whether time.h and sys/time.h may both be included" >&5 + if eval "test \"`echo '$''{'ac_cv_header_time'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 + else + cat > conftest.$ac_ext <<EOF +-#line 1584 "configure" ++#line 1631 "configure" + #include "confdefs.h" + #include <sys/types.h> + #include <sys/time.h> +@@ -1589,7 +1636,7 @@ + struct tm *tp; + ; return 0; } + EOF +-if { (eval echo configure:1593: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then ++if { (eval echo configure:1640: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then + rm -rf conftest* + ac_cv_header_time=yes + else +@@ -1611,19 +1658,19 @@ + + + echo $ac_n "checking whether errno must be declared""... $ac_c" 1>&6 +-echo "configure:1615: checking whether errno must be declared" >&5 ++echo "configure:1662: checking whether errno must be declared" >&5 + if eval "test \"`echo '$''{'libiberty_cv_declare_errno'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 + else + cat > conftest.$ac_ext <<EOF +-#line 1620 "configure" ++#line 1667 "configure" + #include "confdefs.h" + #include <errno.h> + int main() { + int x = errno; + ; return 0; } + EOF +-if { (eval echo configure:1627: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then ++if { (eval echo configure:1674: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then + rm -rf conftest* + libiberty_cv_declare_errno=no + else +@@ -1645,12 +1692,12 @@ + + + echo $ac_n "checking for ANSI C header files""... $ac_c" 1>&6 +-echo "configure:1649: checking for ANSI C header files" >&5 ++echo "configure:1696: checking for ANSI C header files" >&5 + if eval "test \"`echo '$''{'ac_cv_header_stdc'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 + else + cat > conftest.$ac_ext <<EOF +-#line 1654 "configure" ++#line 1701 "configure" + #include "confdefs.h" + #include <stdlib.h> + #include <stdarg.h> +@@ -1658,7 +1705,7 @@ + #include <float.h> + EOF + ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" +-{ (eval echo configure:1662: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ++{ (eval echo configure:1709: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } + ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` + if test -z "$ac_err"; then + rm -rf conftest* +@@ -1675,7 +1722,7 @@ + if test $ac_cv_header_stdc = yes; then + # SunOS 4.x string.h does not declare mem*, contrary to ANSI. + cat > conftest.$ac_ext <<EOF +-#line 1679 "configure" ++#line 1726 "configure" + #include "confdefs.h" + #include <string.h> + EOF +@@ -1693,7 +1740,7 @@ + if test $ac_cv_header_stdc = yes; then + # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. + cat > conftest.$ac_ext <<EOF +-#line 1697 "configure" ++#line 1744 "configure" + #include "confdefs.h" + #include <stdlib.h> + EOF +@@ -1714,7 +1761,7 @@ + : + else + cat > conftest.$ac_ext <<EOF +-#line 1718 "configure" ++#line 1765 "configure" + #include "confdefs.h" + #include <ctype.h> + #define ISLOWER(c) ('a' <= (c) && (c) <= 'z') +@@ -1725,7 +1772,7 @@ + exit (0); } + + EOF +-if { (eval echo configure:1729: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null ++if { (eval echo configure:1776: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null + then + : + else +@@ -1749,12 +1796,12 @@ + fi + + echo $ac_n "checking for uintptr_t""... $ac_c" 1>&6 +-echo "configure:1753: checking for uintptr_t" >&5 ++echo "configure:1800: checking for uintptr_t" >&5 + if eval "test \"`echo '$''{'ac_cv_type_uintptr_t'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 + else + cat > conftest.$ac_ext <<EOF +-#line 1758 "configure" ++#line 1805 "configure" + #include "confdefs.h" + #include <sys/types.h> + #if STDC_HEADERS +@@ -1790,12 +1837,12 @@ + + + echo $ac_n "checking for pid_t""... $ac_c" 1>&6 +-echo "configure:1794: checking for pid_t" >&5 ++echo "configure:1841: checking for pid_t" >&5 + if eval "test \"`echo '$''{'ac_cv_type_pid_t'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 + else + cat > conftest.$ac_ext <<EOF +-#line 1799 "configure" ++#line 1846 "configure" + #include "confdefs.h" + #include <sys/types.h> + #if STDC_HEADERS +@@ -1895,12 +1942,12 @@ + realpath canonicalize_file_name + do + echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 +-echo "configure:1899: checking for $ac_func" >&5 ++echo "configure:1946: checking for $ac_func" >&5 + if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 + else + cat > conftest.$ac_ext <<EOF +-#line 1904 "configure" ++#line 1951 "configure" + #include "confdefs.h" + /* System header to define __stub macros and hopefully few prototypes, + which can conflict with char $ac_func(); below. */ +@@ -1923,7 +1970,7 @@ + + ; return 0; } + EOF +-if { (eval echo configure:1927: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then ++if { (eval echo configure:1974: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + eval "ac_cv_func_$ac_func=yes" + else +@@ -2152,53 +2199,6 @@ + + # We haven't set the list of objects yet. Use the standard autoconf + # tests. This will only work if the compiler works. +- echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works""... $ac_c" 1>&6 +-echo "configure:2157: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5 +- +-ac_ext=c +-# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +-ac_cpp='$CPP $CPPFLAGS' +-ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +-ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +-cross_compiling=$ac_cv_prog_cc_cross +- +-cat > conftest.$ac_ext << EOF +- +-#line 2168 "configure" +-#include "confdefs.h" +- +-main(){return(0);} +-EOF +-if { (eval echo configure:2173: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +- ac_cv_prog_cc_works=yes +- # If we can't run a trivial program, we are probably using a cross compiler. +- if (./conftest; exit) 2>/dev/null; then +- ac_cv_prog_cc_cross=no +- else +- ac_cv_prog_cc_cross=yes +- fi +-else +- echo "configure: failed program was:" >&5 +- cat conftest.$ac_ext >&5 +- ac_cv_prog_cc_works=no +-fi +-rm -fr conftest* +-ac_ext=c +-# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +-ac_cpp='$CPP $CPPFLAGS' +-ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +-ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +-cross_compiling=$ac_cv_prog_cc_cross +- +-echo "$ac_t""$ac_cv_prog_cc_works" 1>&6 +-if test $ac_cv_prog_cc_works = no; then +- { echo "configure: error: installation or configuration problem: C compiler cannot create executables." 1>&2; exit 1; } +-fi +-echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6 +-echo "configure:2199: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5 +-echo "$ac_t""$ac_cv_prog_cc_cross" 1>&6 +-cross_compiling=$ac_cv_prog_cc_cross +- + for ac_func in $funcs + do + echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 +@@ -2900,7 +2900,7 @@ + esac + + +-for ac_hdr in stdlib.h unistd.h sys/stat.h sys/types.h ++for ac_hdr in unistd.h + do + ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` + echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 +@@ -3032,24 +3032,11 @@ + #include <fcntl.h> + #include <sys/mman.h> + +-#if HAVE_SYS_TYPES_H +-# include <sys/types.h> +-#endif +- +-#if HAVE_STDLIB_H +-# include <stdlib.h> +-#endif +- +-#if HAVE_SYS_STAT_H +-# include <sys/stat.h> +-#endif +- +-#if HAVE_UNISTD_H +-# include <unistd.h> +-#endif +- + /* This mess was copied from the GNU getpagesize.h. */ + #ifndef HAVE_GETPAGESIZE ++# ifdef HAVE_UNISTD_H ++# include <unistd.h> ++# endif + + /* Assume that all systems that can run configure have sys/param.h. */ + # ifndef HAVE_SYS_PARAM_H +@@ -3157,7 +3144,7 @@ + } + + EOF +-if { (eval echo configure:3161: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null ++if { (eval echo configure:3148: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null + then + ac_cv_func_mmap_fixed_mapped=yes + else +@@ -3181,7 +3168,7 @@ + + + echo $ac_n "checking for working strncmp""... $ac_c" 1>&6 +-echo "configure:3185: checking for working strncmp" >&5 ++echo "configure:3172: checking for working strncmp" >&5 + if eval "test \"`echo '$''{'ac_cv_func_strncmp_works'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 + else +@@ -3189,7 +3176,7 @@ + ac_cv_func_strncmp_works=no + else + cat > conftest.$ac_ext <<EOF +-#line 3193 "configure" ++#line 3180 "configure" + #include "confdefs.h" + + /* Test by Jim Wilson and Kaveh Ghazi. +@@ -3253,7 +3240,7 @@ + } + + EOF +-if { (eval echo configure:3257: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null ++if { (eval echo configure:3244: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null + then + ac_cv_func_strncmp_works=yes + else diff --git a/openembedded/packages/gdb/files/sim-install.patch b/openembedded/packages/gdb/files/sim-install.patch new file mode 100644 index 0000000000..3c88c4c059 --- /dev/null +++ b/openembedded/packages/gdb/files/sim-install.patch @@ -0,0 +1,34 @@ +--- gdb-6.1/sim/common/Makefile.in~ 2004-01-15 21:25:06.000000000 +0000 ++++ gdb-6.1/sim/common/Makefile.in 2004-07-22 17:07:46.237809032 +0100 +@@ -34,7 +34,7 @@ + + datadir = @datadir@ + mandir = @mandir@ +-man1dir = $(mandir)/man1 ++man1dir = $(DESTDIR)$(mandir)/man1 + infodir = @infodir@ + includedir = @includedir@ + + +--- gdb-6.1/sim/common/Make-common.in~sim-install.patch 2003-09-08 18:24:59.000000000 +0100 ++++ gdb-6.1/sim/common/Make-common.in 2004-07-22 17:56:18.947423032 +0100 +@@ -581,14 +581,14 @@ + + install-common: installdirs + n=`echo run | sed '$(program_transform_name)'`; \ +- $(INSTALL_PROGRAM) run$(EXEEXT) $(bindir)/$$n$(EXEEXT) ++ $(INSTALL_PROGRAM) run$(EXEEXT) $(DESTDIR)$(bindir)/$$n$(EXEEXT) + n=`echo libsim.a | sed s/libsim.a/lib$(target_alias)-sim.a/`; \ +- $(INSTALL_DATA) libsim.a $(libdir)/$$n ; \ +- ( cd $(libdir) ; $(RANLIB) $$n ) ++ $(INSTALL_DATA) libsim.a $(DESTDIR)$(libdir)/$$n ; \ ++ ( cd $(DESTDIR)$(libdir) ; $(RANLIB) $$n ) + + installdirs: +- $(SHELL) $(srcdir)/../../mkinstalldirs $(bindir) +- $(SHELL) $(srcdir)/../../mkinstalldirs $(libdir) ++ $(SHELL) $(srcdir)/../../mkinstalldirs $(DESTDIR)$(bindir) ++ $(SHELL) $(srcdir)/../../mkinstalldirs $(DESTDIR)$(libdir) + + check: + cd ../testsuite && $(MAKE) check RUNTESTFLAGS="$(RUNTESTFLAGS)" diff --git a/openembedded/packages/gdb/files/uclibc.patch b/openembedded/packages/gdb/files/uclibc.patch new file mode 100644 index 0000000000..3d6b7ba187 --- /dev/null +++ b/openembedded/packages/gdb/files/uclibc.patch @@ -0,0 +1,194 @@ +--- binutils-2.15.91.0.1/bfd/config.bfd~binutils-2.15.90.0.3-uclibc-100-conf ++++ binutils-2.15.91.0.1/bfd/config.bfd +@@ -128,7 +128,7 @@ + targ_defvec=ecoffalpha_little_vec + targ_selvecs=bfd_elf64_alpha_vec + ;; +- alpha*-*-linux-gnu* | alpha*-*-elf*) ++ alpha*-*-linux-gnu* | alpha*-*-linux-uclibc* | alpha*-*-elf*) + targ_defvec=bfd_elf64_alpha_vec + targ_selvecs=ecoffalpha_little_vec + ;; +@@ -138,7 +138,7 @@ + alpha*-*-*) + targ_defvec=ecoffalpha_little_vec + ;; +- ia64*-*-freebsd* | ia64*-*-netbsd* | ia64*-*-linux-gnu* | ia64*-*-elf* | ia64*-*-kfreebsd*-gnu) ++ ia64*-*-freebsd* | ia64*-*-netbsd* | ia64*-*-linux-gnu* | ia64*-*-elf* | ia64*-*-linux-uclibc* | ia64*-*-kfreebsd*-gnu) + targ_defvec=bfd_elf64_ia64_little_vec + targ_selvecs="bfd_elf64_ia64_big_vec bfd_efi_app_ia64_vec" + ;; +@@ -215,7 +215,7 @@ + targ_defvec=bfd_elf32_littlearm_vec + targ_selvecs=bfd_elf32_bigarm_vec + ;; +- armeb-*-elf | arm*b-*-linux-gnu*) ++ armeb-*-elf | arm*b-*-linux-gnu* | arm*b-*-linux-uclibc*) + targ_defvec=bfd_elf32_bigarm_vec + targ_selvecs=bfd_elf32_littlearm_vec + ;; +@@ -223,8 +223,8 @@ + targ_defvec=bfd_elf32_littlearm_vec + targ_selvecs=bfd_elf32_bigarm_vec + ;; +- arm-*-elf | arm-*-freebsd* | arm*-*-linux-gnu* | arm*-*-conix* | \ +- arm*-*-uclinux* | arm-*-kfreebsd*-gnu | arm-*-vxworks) ++ arm-*-elf | arm-*-freebsd* | arm*-*-linux-gnu* | arm*-*-linux-uclibc* | \ ++ arm*-*-conix* | arm*-*-uclinux* | arm-*-kfreebsd*-gnu | arm-*-vxworks) + targ_defvec=bfd_elf32_littlearm_vec + targ_selvecs=bfd_elf32_bigarm_vec + ;; +@@ -367,7 +367,7 @@ + ;; + + #ifdef BFD64 +- hppa*64*-*-linux-gnu*) ++ hppa*64*-*-linux-gnu* | hppa*64*-*-linux-uclibc*) + targ_defvec=bfd_elf64_hppa_linux_vec + targ_selvecs=bfd_elf64_hppa_vec + ;; +@@ -378,7 +378,7 @@ + ;; + #endif + +- hppa*-*-linux-gnu* | hppa*-*-netbsd*) ++ hppa*-*-linux-gnu* | hppa*-*-netbsd* | hppa*-*-linux-uclibc*) + targ_defvec=bfd_elf32_hppa_linux_vec + targ_selvecs=bfd_elf32_hppa_vec + ;; +@@ -501,7 +501,7 @@ + targ_selvecs=bfd_elf32_i386_vec + targ_underscore=yes + ;; +- i[3-7]86-*-linux-gnu*) ++ i[3-7]86-*-linux-gnu* | i[3-7]86-*-linux-uclibc*) + targ_defvec=bfd_elf32_i386_vec + targ_selvecs="i386linux_vec bfd_efi_app_ia32_vec" + targ64_selvecs=bfd_elf64_x86_64_vec +@@ -515,7 +515,7 @@ + targ_defvec=bfd_elf64_x86_64_vec + targ_selvecs="bfd_elf32_i386_vec i386netbsd_vec i386coff_vec bfd_efi_app_ia32_vec" + ;; +- x86_64-*-linux-gnu*) ++ x86_64-*-linux-gnu* | x86_64-*-linux-uclibc*) + targ_defvec=bfd_elf64_x86_64_vec + targ_selvecs="bfd_elf32_i386_vec i386linux_vec bfd_efi_app_ia32_vec" + ;; +@@ -690,7 +690,7 @@ + targ_selvecs=bfd_elf32_m68k_vec + targ_underscore=yes + ;; +- m68*-*-linux-gnu*) ++ m68*-*-linux-gnu* | m68*-*-linux-uclibc*) + targ_defvec=bfd_elf32_m68k_vec + targ_selvecs=m68klinux_vec + ;; +@@ -966,7 +966,8 @@ + ;; + #endif + powerpc-*-*bsd* | powerpc-*-elf* | powerpc-*-sysv4* | powerpc-*-eabi* | \ +- powerpc-*-solaris2* | powerpc-*-linux-gnu* | powerpc-*-rtems* | \ ++ powerpc-*-solaris2* | powerpc-*-linux-gnu* | powerpc-*-linux-uclibc* | \ ++ powerpc-*-rtems* | \ + powerpc-*-chorus* | powerpc-*-vxworks* | powerpc-*-windiss*) + targ_defvec=bfd_elf32_powerpc_vec + targ_selvecs="rs6000coff_vec bfd_elf32_powerpcle_vec ppcboot_vec" +@@ -1003,8 +1004,8 @@ + targ_selvecs="rs6000coff_vec bfd_elf32_powerpc_vec ppcboot_vec" + ;; + powerpcle-*-elf* | powerpcle-*-sysv4* | powerpcle-*-eabi* | \ +- powerpcle-*-solaris2* | powerpcle-*-linux-gnu* | powerpcle-*-vxworks* |\ +- powerpcle-*-rtems*) ++ powerpcle-*-solaris2* | powerpcle-*-linux-gnu* | powerpcle-*-linux-uclibc* |\ ++ powerpcle-*-vxworks* | powerpcle-*-rtems*) + targ_defvec=bfd_elf32_powerpcle_vec + targ_selvecs="rs6000coff_vec bfd_elf32_powerpc_vec ppcboot_vec" + targ64_selvecs="bfd_elf64_powerpc_vec bfd_elf64_powerpcle_vec" +@@ -1165,7 +1166,7 @@ + targ_selvecs="bfd_elf32_sparc_vec sunos_big_vec" + targ_underscore=yes + ;; +- sparc-*-linux-gnu*) ++ sparc-*-linux-gnu* | sparc-*-linux-uclibc*) + targ_defvec=bfd_elf32_sparc_vec + targ_selvecs="sparclinux_vec bfd_elf64_sparc_vec sunos_big_vec" + ;; +@@ -1212,7 +1213,7 @@ + targ_defvec=sunos_big_vec + targ_underscore=yes + ;; +- sparc64-*-linux-gnu*) ++ sparc64-*-linux-gnu* | sparc64-*-linux-uclibc*) + targ_defvec=bfd_elf64_sparc_vec + targ_selvecs="bfd_elf32_sparc_vec sparclinux_vec sunos_big_vec" + ;; +--- binutils-2.15.91.0.1/bfd/configure~binutils-2.15.90.0.3-uclibc-100-conf ++++ binutils-2.15.91.0.1/bfd/configure +@@ -1687,6 +1687,11 @@ + lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` + ;; + ++linux-uclibc*) ++ lt_cv_deplibs_check_method=pass_all ++ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` ++ ;; ++ + netbsd*) + if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then + lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$' +@@ -5266,7 +5271,7 @@ + alpha*-*-freebsd* | alpha*-*-kfreebsd*-gnu) + COREFILE='' + ;; +- alpha*-*-linux-gnu*) ++ alpha*-*-linux-gnu* | alpha*-*-linux-uclibc*) + COREFILE=trad-core.lo + TRAD_HEADER='"hosts/alphalinux.h"' + ;; +@@ -5326,7 +5331,7 @@ + COREFILE=trad-core.lo + TRAD_HEADER='"hosts/i386mach3.h"' + ;; +- i[3-7]86-*-linux-gnu*) ++ i[3-7]86-*-linux-gnu* | i[3-7]86-*-linux-uclibc*) + COREFILE=trad-core.lo + TRAD_HEADER='"hosts/i386linux.h"' + ;; +@@ -5364,7 +5369,7 @@ + COREFILE=trad-core.lo + TRAD_HEADER='"hosts/hp300bsd.h"' + ;; +- m68*-*-linux-gnu*) ++ m68*-*-linux-gnu* | m68*-*-linux-uclibc*) + COREFILE=trad-core.lo + TRAD_HEADER='"hosts/m68klinux.h"' + ;; +--- binutils-2.15.91.0.1/bfd/configure.in~binutils-2.15.90.0.3-uclibc-100-conf ++++ binutils-2.15.91.0.1/bfd/configure.in +@@ -164,7 +164,7 @@ + alpha*-*-freebsd* | alpha*-*-kfreebsd*-gnu) + COREFILE='' + ;; +- alpha*-*-linux-gnu*) ++ alpha*-*-linux-gnu* | alpha*-*-linux-uclibc*) + COREFILE=trad-core.lo + TRAD_HEADER='"hosts/alphalinux.h"' + ;; +@@ -245,7 +245,7 @@ + TRAD_HEADER='"hosts/i386mach3.h"' + ;; + changequote(,)dnl +- i[3-7]86-*-linux-gnu*) ++ i[3-7]86-*-linux-gnu* | i[3-7]86-*-linux-uclibc*) + changequote([,])dnl + COREFILE=trad-core.lo + TRAD_HEADER='"hosts/i386linux.h"' +@@ -286,7 +286,7 @@ + COREFILE=trad-core.lo + TRAD_HEADER='"hosts/hp300bsd.h"' + ;; +- m68*-*-linux-gnu*) ++ m68*-*-linux-gnu* | m68*-*-linux-uclibc*) + COREFILE=trad-core.lo + TRAD_HEADER='"hosts/m68klinux.h"' + ;; diff --git a/openembedded/packages/gdb/gdb-6.3/uclibc.patch b/openembedded/packages/gdb/gdb-6.3/uclibc.patch new file mode 100644 index 0000000000..b3981202ff --- /dev/null +++ b/openembedded/packages/gdb/gdb-6.3/uclibc.patch @@ -0,0 +1,194 @@ +--- gdb-6.3/bfd/config.bfd.orig 2004-10-15 06:47:11.000000000 +0100 ++++ gdb-6.3/bfd/config.bfd 2005-01-05 19:30:32.000000000 +0000 +@@ -129,7 +129,7 @@ + targ_defvec=ecoffalpha_little_vec + targ_selvecs=bfd_elf64_alpha_vec + ;; +- alpha*-*-linux-gnu* | alpha*-*-elf*) ++ alpha*-*-linux-gnu* | alpha*-*-linux-uclibc* | alpha*-*-elf*) + targ_defvec=bfd_elf64_alpha_vec + targ_selvecs=ecoffalpha_little_vec + ;; +@@ -139,7 +139,7 @@ + alpha*-*-*) + targ_defvec=ecoffalpha_little_vec + ;; +- ia64*-*-freebsd* | ia64*-*-netbsd* | ia64*-*-linux-gnu* | ia64*-*-elf* | ia64*-*-kfreebsd*-gnu) ++ ia64*-*-freebsd* | ia64*-*-netbsd* | ia64*-*-linux-gnu* | ia64*-*-elf* | ia64*-*-linux-uclibc* | ia64*-*-kfreebsd*-gnu) + targ_defvec=bfd_elf64_ia64_little_vec + targ_selvecs="bfd_elf64_ia64_big_vec bfd_efi_app_ia64_vec" + ;; +@@ -216,7 +216,7 @@ + targ_defvec=bfd_elf32_littlearm_vec + targ_selvecs=bfd_elf32_bigarm_vec + ;; +- armeb-*-elf | arm*b-*-linux-gnu*) ++ armeb-*-elf | arm*b-*-linux-gnu* | arm*b-*-linux-uclibc*) + targ_defvec=bfd_elf32_bigarm_vec + targ_selvecs=bfd_elf32_littlearm_vec + ;; +@@ -224,8 +224,8 @@ + targ_defvec=bfd_elf32_littlearm_vec + targ_selvecs=bfd_elf32_bigarm_vec + ;; +- arm-*-elf | arm-*-freebsd* | arm*-*-linux-gnu* | arm*-*-conix* | \ +- arm*-*-uclinux* | arm-*-kfreebsd*-gnu | arm-*-vxworks | \ ++ arm-*-elf | arm-*-freebsd* | arm*-*-linux-gnu* | arm*-*-linux-uclibc* | \ ++ arm*-*-conix* | arm*-*-uclinux* | arm-*-kfreebsd*-gnu | arm-*-vxworks | \ + arm*-*-eabi* ) + targ_defvec=bfd_elf32_littlearm_vec + targ_selvecs=bfd_elf32_bigarm_vec +@@ -378,7 +378,7 @@ + ;; + + #ifdef BFD64 +- hppa*64*-*-linux-gnu*) ++ hppa*64*-*-linux-gnu* | hppa*64*-*-linux-uclibc*) + targ_defvec=bfd_elf64_hppa_linux_vec + targ_selvecs=bfd_elf64_hppa_vec + ;; +@@ -389,7 +389,7 @@ + ;; + #endif + +- hppa*-*-linux-gnu*) ++ hppa*-*-linux-gnu* | hppa*-*-linux-uclibc*) + targ_defvec=bfd_elf32_hppa_linux_vec + targ_selvecs=bfd_elf32_hppa_vec + ;; +@@ -522,7 +522,7 @@ + targ_selvecs=bfd_elf32_i386_vec + targ_underscore=yes + ;; +- i[3-7]86-*-linux-gnu*) ++ i[3-7]86-*-linux-gnu* | i[3-7]86-*-linux-uclibc*) + targ_defvec=bfd_elf32_i386_vec + targ_selvecs="i386linux_vec bfd_efi_app_ia32_vec" + targ64_selvecs=bfd_elf64_x86_64_vec +@@ -536,7 +536,7 @@ + targ_defvec=bfd_elf64_x86_64_vec + targ_selvecs="bfd_elf32_i386_vec i386netbsd_vec i386coff_vec bfd_efi_app_ia32_vec" + ;; +- x86_64-*-linux-gnu*) ++ x86_64-*-linux-gnu* | x86_64-*-linux-uclibc*) + targ_defvec=bfd_elf64_x86_64_vec + targ_selvecs="bfd_elf32_i386_vec i386linux_vec bfd_efi_app_ia32_vec" + ;; +@@ -711,7 +711,7 @@ + targ_selvecs=bfd_elf32_m68k_vec + targ_underscore=yes + ;; +- m68*-*-linux-gnu*) ++ m68*-*-linux-gnu* | m68*-*-linux-uclibc*) + targ_defvec=bfd_elf32_m68k_vec + targ_selvecs=m68klinux_vec + ;; +@@ -987,7 +987,8 @@ + ;; + #endif + powerpc-*-*bsd* | powerpc-*-elf* | powerpc-*-sysv4* | powerpc-*-eabi* | \ +- powerpc-*-solaris2* | powerpc-*-linux-gnu* | powerpc-*-rtems* | \ ++ powerpc-*-solaris2* | powerpc-*-linux-gnu* | powerpc-*-linux-uclibc* | \ ++ powerpc-*-rtems* | \ + powerpc-*-chorus* | powerpc-*-vxworks* | powerpc-*-windiss*) + targ_defvec=bfd_elf32_powerpc_vec + targ_selvecs="rs6000coff_vec bfd_elf32_powerpcle_vec ppcboot_vec" +@@ -1024,8 +1025,8 @@ + targ_selvecs="rs6000coff_vec bfd_elf32_powerpc_vec ppcboot_vec" + ;; + powerpcle-*-elf* | powerpcle-*-sysv4* | powerpcle-*-eabi* | \ +- powerpcle-*-solaris2* | powerpcle-*-linux-gnu* | powerpcle-*-vxworks* |\ +- powerpcle-*-rtems*) ++ powerpcle-*-solaris2* | powerpcle-*-linux-gnu* | powerpcle-*-linux-uclibc* |\ ++ powerpcle-*-vxworks* | powerpcle-*-rtems*) + targ_defvec=bfd_elf32_powerpcle_vec + targ_selvecs="rs6000coff_vec bfd_elf32_powerpc_vec ppcboot_vec" + targ64_selvecs="bfd_elf64_powerpc_vec bfd_elf64_powerpcle_vec" +@@ -1192,7 +1193,7 @@ + targ_selvecs="bfd_elf32_sparc_vec sunos_big_vec" + targ_underscore=yes + ;; +- sparc-*-linux-gnu*) ++ sparc-*-linux-gnu* | sparc-*-linux-uclibc*) + targ_defvec=bfd_elf32_sparc_vec + targ_selvecs="sparclinux_vec bfd_elf64_sparc_vec sunos_big_vec" + ;; +@@ -1239,7 +1240,7 @@ + targ_defvec=sunos_big_vec + targ_underscore=yes + ;; +- sparc64-*-linux-gnu*) ++ sparc64-*-linux-gnu* | sparc64-*-linux-uclibc*) + targ_defvec=bfd_elf64_sparc_vec + targ_selvecs="bfd_elf32_sparc_vec sparclinux_vec sunos_big_vec" + ;; +--- gdb-6.3/bfd/configure.in.orig 2004-10-08 15:53:59.000000000 +0100 ++++ gdb-6.3/bfd/configure.in 2005-01-05 19:28:50.000000000 +0000 +@@ -163,7 +163,7 @@ + alpha*-*-freebsd* | alpha*-*-kfreebsd*-gnu) + COREFILE='' + ;; +- alpha*-*-linux-gnu*) ++ alpha*-*-linux-gnu* | alpha*-*-linux-uclibc*) + COREFILE=trad-core.lo + TRAD_HEADER='"hosts/alphalinux.h"' + ;; +@@ -248,7 +248,7 @@ + TRAD_HEADER='"hosts/i386mach3.h"' + ;; + changequote(,)dnl +- i[3-7]86-*-linux-gnu*) ++ i[3-7]86-*-linux-gnu* | i[3-7]86-*-linux-uclibc*) + changequote([,])dnl + COREFILE=trad-core.lo + TRAD_HEADER='"hosts/i386linux.h"' +@@ -289,7 +289,7 @@ + COREFILE=trad-core.lo + TRAD_HEADER='"hosts/hp300bsd.h"' + ;; +- m68*-*-linux-gnu*) ++ m68*-*-linux-gnu* | m68*-*-linux-uclibc*) + COREFILE=trad-core.lo + TRAD_HEADER='"hosts/m68klinux.h"' + ;; +--- gdb-6.3/bfd/configure.orig 2004-10-08 15:53:56.000000000 +0100 ++++ gdb-6.3/bfd/configure 2005-01-05 19:29:27.000000000 +0000 +@@ -3583,6 +3583,11 @@ + lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` + ;; + ++linux-uclibc*) ++ lt_cv_deplibs_check_method=pass_all ++ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` ++ ;; ++ + netbsd* | knetbsd*-gnu) + if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then + lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$' +@@ -9914,7 +9919,7 @@ + alpha*-*-freebsd* | alpha*-*-kfreebsd*-gnu) + COREFILE='' + ;; +- alpha*-*-linux-gnu*) ++ alpha*-*-linux-gnu* | alpha*-*-linux-uclibc*) + COREFILE=trad-core.lo + TRAD_HEADER='"hosts/alphalinux.h"' + ;; +@@ -9978,7 +9983,7 @@ + COREFILE=trad-core.lo + TRAD_HEADER='"hosts/i386mach3.h"' + ;; +- i[3-7]86-*-linux-gnu*) ++ i[3-7]86-*-linux-gnu* | i[3-7]86-*-linux-uclibc*) + COREFILE=trad-core.lo + TRAD_HEADER='"hosts/i386linux.h"' + ;; +@@ -10016,7 +10021,7 @@ + COREFILE=trad-core.lo + TRAD_HEADER='"hosts/hp300bsd.h"' + ;; +- m68*-*-linux-gnu*) ++ m68*-*-linux-gnu* | m68*-*-linux-uclibc*) + COREFILE=trad-core.lo + TRAD_HEADER='"hosts/m68klinux.h"' + ;; diff --git a/openembedded/packages/gdb/gdb-cross_6.3.bb b/openembedded/packages/gdb/gdb-cross_6.3.bb new file mode 100644 index 0000000000..a6823b6373 --- /dev/null +++ b/openembedded/packages/gdb/gdb-cross_6.3.bb @@ -0,0 +1,36 @@ +LICENSE = "GPL" +DESCRIPTION = "gdb - GNU debugger" +SECTION = "base" +PRIORITY = "optional" +MAINTAINER = "Phil Blundell <pb@nexus.co.uk>" +DEPENDS = "ncurses-native" + +inherit autotools sdk + +S = "${WORKDIR}/gdb-${PV}" +SRC_URI = "${GNU_MIRROR}/gdb/gdb-${PV}.tar.gz \ + file://sim-install.patch;patch=1" + +FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/gdb-${PV}" + +export CC_FOR_BUILD = "${BUILD_CC}" +export CXX_FOR_BUILD = "${BUILD_CXX}" +export CPP_FOR_BUILD = "${BUILD_CPP}" +export CFLAGS_FOR_BUILD = "${BUILD_CFLAGS}" +export CXXFLAGS_FOR_BUILD = "${BUILD_CXXFLAGS}" +export CPPFLAGS_FOR_BUILD = "${BUILD_CPPFLAGS}" + +EXTRA_OEMAKE = "'SUBDIRS=intl mmalloc libiberty opcodes bfd sim gdb etc utils' LDFLAGS='${BUILD_LDFLAGS}'" + +EXTRA_OECONF = "--with-curses --with-readline" + +do_configure () { +# override this function to avoid the autoconf/automake/aclocal/autoheader +# calls for now + gnu-configize + oe_runconf +} + +do_stage() { + : +} diff --git a/openembedded/packages/gdb/gdb_6.3.bb b/openembedded/packages/gdb/gdb_6.3.bb new file mode 100644 index 0000000000..fcabfdc5f3 --- /dev/null +++ b/openembedded/packages/gdb/gdb_6.3.bb @@ -0,0 +1,48 @@ +DESCRIPTION = "gdb - GNU debugger" +HOMEPAGE = "http://www.gnu.org/software/gdb/" +LICENSE="GPL" +SECTION = "devel" +PRIORITY = "optional" +MAINTAINER = "Pawel Osiczko <p.osiczko@tetrapyloctomy.org>" +DEPENDS = "ncurses readline" +RDEPENDS_openmn = "libthread-db1" + +PACKAGES =+ 'gdbserver ' +FILES_gdbserver = '${bindir}/gdbserver' + +inherit autotools gettext + +SRC_URI = "${GNU_MIRROR}/gdb/gdb-${PV}.tar.gz \ + file://uclibc.patch;patch=1 \ + file://gdbserver-cflags-last.diff;patch=1;pnum=0" + +LDFLAGS_append = " -s" +export CC_FOR_BUILD = "${BUILD_CC}" +export CXX_FOR_BUILD = "${BUILD_CXX}" +export CPP_FOR_BUILD = "${BUILD_CPP}" +export CFLAGS_FOR_BUILD = "${BUILD_CFLAGS}" +export CXXFLAGS_FOR_BUILD = "${BUILD_CXXFLAGS}" +export CPPFLAGS_FOR_BUILD = "${BUILD_CPPFLAGS}" +export CFLAGS_append=" -L${STAGING_LIBDIR}" +EXTRA_OEMAKE = "'SUBDIRS=intl mmalloc libiberty opcodes bfd sim gdb etc utils'" + +EXTRA_OECONF = "--disable-gdbtk --disable-tui --disable-x \ + --with-curses --disable-multilib --with-readline --disable-sim \ + --program-prefix=''" + +S = "${WORKDIR}/gdb-${PV}" +B = "${WORKDIR}/build-${TARGET_SYS}" + +do_configure () { +# override this function to avoid the autoconf/automake/aclocal/autoheader +# calls for now + (cd ${S} && gnu-configize) || die "failure in running gnu-configize" + CPPFLAGS="" oe_runconf +} + +do_install () { + make -C bfd/doc chew LDFLAGS= CFLAGS=-O2 + oe_runmake DESTDIR='${D}' install + install -d ${D}${bindir} + install -m 0755 gdb/gdbserver/gdbserver ${D}${bindir} +} diff --git a/openembedded/packages/meta/meta-oh.bb b/openembedded/packages/meta/meta-oh.bb index 1508567a81..d61824c393 100644 --- a/openembedded/packages/meta/meta-oh.bb +++ b/openembedded/packages/meta/meta-oh.bb @@ -20,6 +20,8 @@ oh-task-base = "\ gtk+ \ rxvt \ xhost \ + gdb \ + strace \ ttf-bitstream-vera \ xauth" @@ -35,13 +37,11 @@ RDEPENDS_oh-task-base := "${oh-task-base} \ gdk-pixbuf-loader-png \ gdk-pixbuf-loader-xpm \ gdk-pixbuf-loader-jpeg \ - gdb \ - strace \ tslib-calibrate \ tslib-tests \ pango-module-basic-x \ pango-module-basic-fc" -DEPENDS += " ${oh-task-base}" +DEPENDS += " ${oh-task-base} tslib" LICENSE = "MIT" diff --git a/openembedded/packages/readline/readline-4.3/acinclude.m4 b/openembedded/packages/readline/readline-4.3/acinclude.m4 new file mode 100644 index 0000000000..8a45f99084 --- /dev/null +++ b/openembedded/packages/readline/readline-4.3/acinclude.m4 @@ -0,0 +1,1815 @@ +dnl +dnl Bash specific tests +dnl +dnl Some derived from PDKSH 5.1.3 autoconf tests +dnl + +AC_DEFUN([BASH_C_LONG_LONG], +[AC_CACHE_CHECK(for long long, ac_cv_c_long_long, +[if test "$GCC" = yes; then + ac_cv_c_long_long=yes +else +AC_TRY_RUN([ +int +main() +{ +long long foo = 0; +exit(sizeof(long long) < sizeof(long)); +} +], ac_cv_c_long_long=yes, ac_cv_c_long_long=no) +fi]) +if test $ac_cv_c_long_long = yes; then + AC_DEFINE(HAVE_LONG_LONG, 1, [Define if the `long long' type works.]) +fi +]) + +dnl +dnl This is very similar to AC_C_LONG_DOUBLE, with the fix for IRIX +dnl (< changed to <=) added. +dnl +AC_DEFUN([BASH_C_LONG_DOUBLE], +[AC_CACHE_CHECK(for long double, ac_cv_c_long_double, +[if test "$GCC" = yes; then + ac_cv_c_long_double=yes +else +AC_TRY_RUN([ +int +main() +{ + /* The Stardent Vistra knows sizeof(long double), but does not + support it. */ + long double foo = 0.0; + /* On Ultrix 4.3 cc, long double is 4 and double is 8. */ + /* On IRIX 5.3, the compiler converts long double to double with a warning, + but compiles this successfully. */ + exit(sizeof(long double) <= sizeof(double)); +} +], ac_cv_c_long_double=yes, ac_cv_c_long_double=no) +fi]) +if test $ac_cv_c_long_double = yes; then + AC_DEFINE(HAVE_LONG_DOUBLE, 1, [Define if the `long double' type works.]) +fi +]) + +dnl +dnl Check for <inttypes.h>. This is separated out so that it can be +dnl AC_REQUIREd. +dnl +dnl BASH_HEADER_INTTYPES +AC_DEFUN([BASH_HEADER_INTTYPES], +[ + AC_CHECK_HEADERS(inttypes.h) +]) + +dnl +dnl check for typedef'd symbols in header files, but allow the caller to +dnl specify the include files to be checked in addition to the default +dnl +dnl BASH_CHECK_TYPE(TYPE, HEADERS, DEFAULT[, VALUE-IF-FOUND]) +AC_DEFUN([BASH_CHECK_TYPE], +[ +AC_REQUIRE([AC_HEADER_STDC])dnl +AC_REQUIRE([BASH_HEADER_INTTYPES]) +AC_MSG_CHECKING(for $1) +AC_CACHE_VAL(bash_cv_type_$1, +[AC_EGREP_CPP($1, [#include <sys/types.h> +#if STDC_HEADERS +#include <stdlib.h> +#include <stddef.h> +#endif +#if HAVE_INTTYPES_H +#include <inttypes.h> +#endif +$2 +], bash_cv_type_$1=yes, bash_cv_type_$1=no)]) +AC_MSG_RESULT($bash_cv_type_$1) +ifelse($#, 4, [if test $bash_cv_type_$1 = yes; then + AC_DEFINE($4) + fi]) +if test $bash_cv_type_$1 = no; then + AC_DEFINE_UNQUOTED($1, $3) +fi +]) + +dnl +dnl BASH_CHECK_DECL(FUNC) +dnl +dnl Check for a declaration of FUNC in stdlib.h and inttypes.h like +dnl AC_CHECK_DECL +dnl +AC_DEFUN([BASH_CHECK_DECL], +[ +AC_REQUIRE([AC_HEADER_STDC]) +AC_REQUIRE([BASH_HEADER_INTTYPES]) +AC_CACHE_CHECK([for declaration of $1], bash_cv_decl_$1, +[AC_TRY_LINK( +[ +#if STDC_HEADERS +# include <stdlib.h> +#endif +#if HAVE_INTTYPES_H +# include <inttypes.h> +#endif +], +[return !$1;], +bash_cv_decl_$1=yes, bash_cv_decl_$1=no)]) +bash_tr_func=HAVE_DECL_`echo $1 | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'` +if test $bash_cv_decl_$1 = yes; then + AC_DEFINE_UNQUOTED($bash_tr_func, 1) +else + AC_DEFINE_UNQUOTED($bash_tr_func, 0) +fi +]) + +AC_DEFUN([BASH_DECL_PRINTF], +[AC_MSG_CHECKING(for declaration of printf in <stdio.h>) +AC_CACHE_VAL(bash_cv_printf_declared, +[AC_TRY_RUN([ +#include <stdio.h> +#ifdef __STDC__ +typedef int (*_bashfunc)(const char *, ...); +#else +typedef int (*_bashfunc)(); +#endif +main() +{ +_bashfunc pf; +pf = (_bashfunc) printf; +exit(pf == 0); +} +], bash_cv_printf_declared=yes, bash_cv_printf_declared=no, + [AC_MSG_WARN(cannot check printf declaration if cross compiling -- defaulting to yes) + bash_cv_printf_declared=yes] +)]) +AC_MSG_RESULT($bash_cv_printf_declared) +if test $bash_cv_printf_declared = yes; then +AC_DEFINE(PRINTF_DECLARED) +fi +]) + +AC_DEFUN([BASH_DECL_SBRK], +[AC_MSG_CHECKING(for declaration of sbrk in <unistd.h>) +AC_CACHE_VAL(bash_cv_sbrk_declared, +[AC_EGREP_HEADER(sbrk, unistd.h, + bash_cv_sbrk_declared=yes, bash_cv_sbrk_declared=no)]) +AC_MSG_RESULT($bash_cv_sbrk_declared) +if test $bash_cv_sbrk_declared = yes; then +AC_DEFINE(SBRK_DECLARED) +fi +]) + +dnl +dnl Check for sys_siglist[] or _sys_siglist[] +dnl +AC_DEFUN([BASH_DECL_UNDER_SYS_SIGLIST], +[AC_MSG_CHECKING([for _sys_siglist in signal.h or unistd.h]) +AC_CACHE_VAL(bash_cv_decl_under_sys_siglist, +[AC_TRY_COMPILE([ +#include <sys/types.h> +#include <signal.h> +#ifdef HAVE_UNISTD_H +#include <unistd.h> +#endif], [ char *msg = _sys_siglist[2]; ], + bash_cv_decl_under_sys_siglist=yes, bash_cv_decl_under_sys_siglist=no, + [AC_MSG_WARN(cannot check for _sys_siglist[] if cross compiling -- defaulting to no)])])dnl +AC_MSG_RESULT($bash_cv_decl_under_sys_siglist) +if test $bash_cv_decl_under_sys_siglist = yes; then +AC_DEFINE(UNDER_SYS_SIGLIST_DECLARED) +fi +]) + +AC_DEFUN([BASH_UNDER_SYS_SIGLIST], +[AC_REQUIRE([BASH_DECL_UNDER_SYS_SIGLIST]) +AC_MSG_CHECKING([for _sys_siglist in system C library]) +AC_CACHE_VAL(bash_cv_under_sys_siglist, +[AC_TRY_RUN([ +#include <sys/types.h> +#include <signal.h> +#ifdef HAVE_UNISTD_H +#include <unistd.h> +#endif +#ifndef UNDER_SYS_SIGLIST_DECLARED +extern char *_sys_siglist[]; +#endif +main() +{ +char *msg = (char *)_sys_siglist[2]; +exit(msg == 0); +}], + bash_cv_under_sys_siglist=yes, bash_cv_under_sys_siglist=no, + [AC_MSG_WARN(cannot check for _sys_siglist[] if cross compiling -- defaulting to no) + bash_cv_under_sys_siglist=no])]) +AC_MSG_RESULT($bash_cv_under_sys_siglist) +if test $bash_cv_under_sys_siglist = yes; then +AC_DEFINE(HAVE_UNDER_SYS_SIGLIST) +fi +]) + +AC_DEFUN([BASH_SYS_SIGLIST], +[ +AC_CHECK_DECLS([sys_siglist]) +AC_MSG_CHECKING([for sys_siglist in system C library]) +AC_CACHE_VAL(bash_cv_sys_siglist, +[AC_TRY_RUN([ +#include <sys/types.h> +#include <signal.h> +#ifdef HAVE_UNISTD_H +#include <unistd.h> +#endif +#ifndef HAVE_DECL_SYS_SIGLIST +extern char *sys_siglist[]; +#endif +main() +{ +char *msg = sys_siglist[2]; +exit(msg == 0); +}], + bash_cv_sys_siglist=yes, bash_cv_sys_siglist=no, + [AC_MSG_WARN(cannot check for sys_siglist if cross compiling -- defaulting to no) + bash_cv_sys_siglist=no])]) +AC_MSG_RESULT($bash_cv_sys_siglist) +if test $bash_cv_sys_siglist = yes; then +AC_DEFINE(HAVE_SYS_SIGLIST) +fi +]) + +dnl Check for the various permutations of sys_siglist and make sure we +dnl compile in siglist.o if they're not defined +AC_DEFUN([BASH_CHECK_SYS_SIGLIST], [ +AC_REQUIRE([BASH_SYS_SIGLIST]) +AC_REQUIRE([BASH_DECL_UNDER_SYS_SIGLIST]) +AC_REQUIRE([BASH_FUNC_STRSIGNAL]) +if test "$bash_cv_sys_siglist" = no && test "$bash_cv_under_sys_siglist" = no && test "$bash_cv_have_strsignal" = no; then + SIGLIST_O=siglist.o +else + SIGLIST_O= +fi +AC_SUBST([SIGLIST_O]) +]) + +dnl Check for sys_errlist[] and sys_nerr, check for declaration +AC_DEFUN([BASH_SYS_ERRLIST], +[AC_MSG_CHECKING([for sys_errlist and sys_nerr]) +AC_CACHE_VAL(bash_cv_sys_errlist, +[AC_TRY_LINK([#include <errno.h>], +[extern char *sys_errlist[]; + extern int sys_nerr; + char *msg = sys_errlist[sys_nerr - 1];], + bash_cv_sys_errlist=yes, bash_cv_sys_errlist=no)])dnl +AC_MSG_RESULT($bash_cv_sys_errlist) +if test $bash_cv_sys_errlist = yes; then +AC_DEFINE(HAVE_SYS_ERRLIST) +fi +]) + +dnl +dnl Check if dup2() does not clear the close on exec flag +dnl +AC_DEFUN([BASH_FUNC_DUP2_CLOEXEC_CHECK], +[AC_MSG_CHECKING(if dup2 fails to clear the close-on-exec flag) +AC_CACHE_VAL(bash_cv_dup2_broken, +[AC_TRY_RUN([ +#include <sys/types.h> +#include <fcntl.h> +main() +{ + int fd1, fd2, fl; + fd1 = open("/dev/null", 2); + if (fcntl(fd1, 2, 1) < 0) + exit(1); + fd2 = dup2(fd1, 1); + if (fd2 < 0) + exit(2); + fl = fcntl(fd2, 1, 0); + /* fl will be 1 if dup2 did not reset the close-on-exec flag. */ + exit(fl != 1); +} +], bash_cv_dup2_broken=yes, bash_cv_dup2_broken=no, + [AC_MSG_WARN(cannot check dup2 if cross compiling -- defaulting to no) + bash_cv_dup2_broken=no]) +]) +AC_MSG_RESULT($bash_cv_dup2_broken) +if test $bash_cv_dup2_broken = yes; then +AC_DEFINE(DUP2_BROKEN) +fi +]) + +AC_DEFUN([BASH_FUNC_STRSIGNAL], +[AC_MSG_CHECKING([for the existence of strsignal]) +AC_CACHE_VAL(bash_cv_have_strsignal, +[AC_TRY_LINK([#include <sys/types.h> +#include <signal.h>], +[char *s = (char *)strsignal(2);], + bash_cv_have_strsignal=yes, bash_cv_have_strsignal=no)]) +AC_MSG_RESULT($bash_cv_have_strsignal) +if test $bash_cv_have_strsignal = yes; then +AC_DEFINE(HAVE_STRSIGNAL) +fi +]) + +dnl Check to see if opendir will open non-directories (not a nice thing) +AC_DEFUN([BASH_FUNC_OPENDIR_CHECK], +[AC_REQUIRE([AC_HEADER_DIRENT])dnl +AC_MSG_CHECKING(if opendir() opens non-directories) +AC_CACHE_VAL(bash_cv_opendir_not_robust, +[AC_TRY_RUN([ +#include <stdio.h> +#include <sys/types.h> +#include <fcntl.h> +#ifdef HAVE_UNISTD_H +# include <unistd.h> +#endif /* HAVE_UNISTD_H */ +#if defined(HAVE_DIRENT_H) +# include <dirent.h> +#else +# define dirent direct +# ifdef HAVE_SYS_NDIR_H +# include <sys/ndir.h> +# endif /* SYSNDIR */ +# ifdef HAVE_SYS_DIR_H +# include <sys/dir.h> +# endif /* SYSDIR */ +# ifdef HAVE_NDIR_H +# include <ndir.h> +# endif +#endif /* HAVE_DIRENT_H */ +main() +{ +DIR *dir; +int fd, err; +err = mkdir("/tmp/bash-aclocal", 0700); +if (err < 0) { + perror("mkdir"); + exit(1); +} +unlink("/tmp/bash-aclocal/not_a_directory"); +fd = open("/tmp/bash-aclocal/not_a_directory", O_WRONLY|O_CREAT|O_EXCL, 0666); +write(fd, "\n", 1); +close(fd); +dir = opendir("/tmp/bash-aclocal/not_a_directory"); +unlink("/tmp/bash-aclocal/not_a_directory"); +rmdir("/tmp/bash-aclocal"); +exit (dir == 0); +}], bash_cv_opendir_not_robust=yes,bash_cv_opendir_not_robust=no, + [AC_MSG_WARN(cannot check opendir if cross compiling -- defaulting to no) + bash_cv_opendir_not_robust=no] +)]) +AC_MSG_RESULT($bash_cv_opendir_not_robust) +if test $bash_cv_opendir_not_robust = yes; then +AC_DEFINE(OPENDIR_NOT_ROBUST) +fi +]) + +dnl +AH_TEMPLATE([VOID_SIGHANDLER], [Define if signal handlers return type void]) +AC_DEFUN([BASH_TYPE_SIGHANDLER], +[AC_MSG_CHECKING([whether signal handlers are of type void]) +AC_CACHE_VAL(bash_cv_void_sighandler, +[AC_TRY_COMPILE([#include <sys/types.h> +#include <signal.h> +#ifdef signal +#undef signal +#endif +#ifdef __cplusplus +extern "C" +#endif +void (*signal ()) ();], +[int i;], bash_cv_void_sighandler=yes, bash_cv_void_sighandler=no)])dnl +AC_MSG_RESULT($bash_cv_void_sighandler) +if test $bash_cv_void_sighandler = yes; then +AC_DEFINE(VOID_SIGHANDLER) +fi +]) + +dnl +dnl A signed 16-bit integer quantity +dnl +AC_DEFUN([BASH_TYPE_BITS16_T], +[ +if test "$ac_cv_sizeof_short" = 2; then + AC_CHECK_TYPE(bits16_t, short) +elif test "$ac_cv_sizeof_char" = 2; then + AC_CHECK_TYPE(bits16_t, char) +else + AC_CHECK_TYPE(bits16_t, short) +fi +]) + +dnl +dnl An unsigned 16-bit integer quantity +dnl +AC_DEFUN([BASH_TYPE_U_BITS16_T], +[ +if test "$ac_cv_sizeof_short" = 2; then + AC_CHECK_TYPE(u_bits16_t, unsigned short) +elif test "$ac_cv_sizeof_char" = 2; then + AC_CHECK_TYPE(u_bits16_t, unsigned char) +else + AC_CHECK_TYPE(u_bits16_t, unsigned short) +fi +]) + +dnl +dnl A signed 32-bit integer quantity +dnl +AC_DEFUN([BASH_TYPE_BITS32_T], +[ +if test "$ac_cv_sizeof_int" = 4; then + AC_CHECK_TYPE(bits32_t, int) +elif test "$ac_cv_sizeof_long" = 4; then + AC_CHECK_TYPE(bits32_t, long) +else + AC_CHECK_TYPE(bits32_t, int) +fi +]) + +dnl +dnl An unsigned 32-bit integer quantity +dnl +AC_DEFUN([BASH_TYPE_U_BITS32_T], +[ +if test "$ac_cv_sizeof_int" = 4; then + AC_CHECK_TYPE(u_bits32_t, unsigned int) +elif test "$ac_cv_sizeof_long" = 4; then + AC_CHECK_TYPE(u_bits32_t, unsigned long) +else + AC_CHECK_TYPE(u_bits32_t, unsigned int) +fi +]) + +AC_DEFUN([BASH_TYPE_PTRDIFF_T], +[ +if test "$ac_cv_sizeof_int" = "$ac_cv_sizeof_char_p"; then + AC_CHECK_TYPE(ptrdiff_t, int) +elif test "$ac_cv_sizeof_long" = "$ac_cv_sizeof_char_p"; then + AC_CHECK_TYPE(ptrdiff_t, long) +elif test "$ac_cv_type_long_long" = yes && test "$ac_cv_sizeof_long_long" = "$ac_cv_sizeof_char_p"; then + AC_CHECK_TYPE(ptrdiff_t, [long long]) +else + AC_CHECK_TYPE(ptrdiff_t, int) +fi +]) + +dnl +dnl A signed 64-bit quantity +dnl +AC_DEFUN([BASH_TYPE_BITS64_T], +[ +if test "$ac_cv_sizeof_char_p" = 8; then + AC_CHECK_TYPE(bits64_t, char *) +elif test "$ac_cv_sizeof_double" = 8; then + AC_CHECK_TYPE(bits64_t, double) +elif test -n "$ac_cv_type_long_long" && test "$ac_cv_sizeof_long_long" = 8; then + AC_CHECK_TYPE(bits64_t, [long long]) +elif test "$ac_cv_sizeof_long" = 8; then + AC_CHECK_TYPE(bits64_t, long) +else + AC_CHECK_TYPE(bits64_t, double) +fi +]) + +AC_DEFUN([BASH_TYPE_LONG_LONG], +[ +AC_CACHE_CHECK([for long long], bash_cv_type_long_long, +[AC_TRY_LINK([ +long long ll = 1; int i = 63;], +[ +long long llm = (long long) -1; +return ll << i | ll >> i | llm / ll | llm % ll; +], bash_cv_type_long_long='long long', bash_cv_type_long_long='long')]) +if test "$bash_cv_type_long_long" = 'long long'; then + AC_DEFINE(HAVE_LONG_LONG, 1) +fi +]) + +AC_DEFUN([BASH_TYPE_UNSIGNED_LONG_LONG], +[ +AC_CACHE_CHECK([for unsigned long long], bash_cv_type_unsigned_long_long, +[AC_TRY_LINK([ +unsigned long long ull = 1; int i = 63;], +[ +unsigned long long ullmax = (unsigned long long) -1; +return ull << i | ull >> i | ullmax / ull | ullmax % ull; +], bash_cv_type_unsigned_long_long='unsigned long long', + bash_cv_type_unsigned_long_long='unsigned long')]) +if test "$bash_cv_type_unsigned_long_long" = 'unsigned long long'; then + AC_DEFINE(HAVE_UNSIGNED_LONG_LONG, 1) +fi +]) + +dnl +dnl Type of struct rlimit fields: some systems (OSF/1, NetBSD, RISC/os 5.0) +dnl have a rlim_t, others (4.4BSD based systems) use quad_t, others use +dnl long and still others use int (HP-UX 9.01, SunOS 4.1.3). To simplify +dnl matters, this just checks for rlim_t, quad_t, or long. +dnl +AC_DEFUN([BASH_TYPE_RLIMIT], +[AC_MSG_CHECKING(for size and type of struct rlimit fields) +AC_CACHE_VAL(bash_cv_type_rlimit, +[AC_TRY_COMPILE([#include <sys/types.h> +#include <sys/resource.h>], +[rlim_t xxx;], bash_cv_type_rlimit=rlim_t,[ +AC_TRY_RUN([ +#include <sys/types.h> +#include <sys/time.h> +#include <sys/resource.h> +main() +{ +#ifdef HAVE_QUAD_T + struct rlimit rl; + if (sizeof(rl.rlim_cur) == sizeof(quad_t)) + exit(0); +#endif + exit(1); +}], bash_cv_type_rlimit=quad_t, bash_cv_type_rlimit=long, + [AC_MSG_WARN(cannot check quad_t if cross compiling -- defaulting to long) + bash_cv_type_rlimit=long])]) +]) +AC_MSG_RESULT($bash_cv_type_rlimit) +if test $bash_cv_type_rlimit = quad_t; then +AC_DEFINE(RLIMTYPE, quad_t) +elif test $bash_cv_type_rlimit = rlim_t; then +AC_DEFINE(RLIMTYPE, rlim_t) +fi +]) + +AC_DEFUN([BASH_FUNC_LSTAT], +[dnl Cannot use AC_CHECK_FUNCS(lstat) because Linux defines lstat() as an +dnl inline function in <sys/stat.h>. +AC_CACHE_CHECK([for lstat], bash_cv_func_lstat, +[AC_TRY_LINK([ +#include <sys/types.h> +#include <sys/stat.h> +],[ lstat(".",(struct stat *)0); ], +bash_cv_func_lstat=yes, bash_cv_func_lstat=no)]) +if test $bash_cv_func_lstat = yes; then + AC_DEFINE(HAVE_LSTAT) +fi +]) + +AC_DEFUN([BASH_FUNC_INET_ATON], +[ +AC_CACHE_CHECK([for inet_aton], bash_cv_func_inet_aton, +[AC_TRY_LINK([ +#include <sys/types.h> +#include <netinet/in.h> +#include <arpa/inet.h> +struct in_addr ap;], [ inet_aton("127.0.0.1", &ap); ], +bash_cv_func_inet_aton=yes, bash_cv_func_inet_aton=no)]) +if test $bash_cv_func_inet_aton = yes; then + AC_DEFINE(HAVE_INET_ATON) +else + AC_LIBOBJ(inet_aton) +fi +]) + +AC_DEFUN([BASH_FUNC_GETENV], +[AC_MSG_CHECKING(to see if getenv can be redefined) +AC_CACHE_VAL(bash_cv_getenv_redef, +[AC_TRY_RUN([ +#ifdef HAVE_UNISTD_H +# include <unistd.h> +#endif +#ifndef __STDC__ +# ifndef const +# define const +# endif +#endif +char * +getenv (name) +#if defined (__linux__) || defined (__bsdi__) || defined (convex) + const char *name; +#else + char const *name; +#endif /* !__linux__ && !__bsdi__ && !convex */ +{ +return "42"; +} +main() +{ +char *s; +/* The next allows this program to run, but does not allow bash to link + when it redefines getenv. I'm not really interested in figuring out + why not. */ +#if defined (NeXT) +exit(1); +#endif +s = getenv("ABCDE"); +exit(s == 0); /* force optimizer to leave getenv in */ +} +], bash_cv_getenv_redef=yes, bash_cv_getenv_redef=no, + [AC_MSG_WARN(cannot check getenv redefinition if cross compiling -- defaulting to yes) + bash_cv_getenv_redef=yes] +)]) +AC_MSG_RESULT($bash_cv_getenv_redef) +if test $bash_cv_getenv_redef = yes; then +AC_DEFINE(CAN_REDEFINE_GETENV) +fi +]) + +# We should check for putenv before calling this +AC_DEFUN([BASH_FUNC_STD_PUTENV], +[ +AC_REQUIRE([AC_HEADER_STDC]) +AC_REQUIRE([AC_C_PROTOTYPES]) +AC_CACHE_CHECK([for standard-conformant putenv declaration], bash_cv_std_putenv, +[AC_TRY_LINK([ +#if STDC_HEADERS +#include <stdlib.h> +#include <stddef.h> +#endif +#ifndef __STDC__ +# ifndef const +# define const +# endif +#endif +#ifdef PROTOTYPES +extern int putenv (char *); +#else +extern int putenv (); +#endif +], +[return (putenv == 0);], +bash_cv_std_putenv=yes, bash_cv_std_putenv=no +)]) +if test $bash_cv_std_putenv = yes; then +AC_DEFINE(HAVE_STD_PUTENV) +fi +]) + +# We should check for unsetenv before calling this +AC_DEFUN([BASH_FUNC_STD_UNSETENV], +[ +AC_REQUIRE([AC_HEADER_STDC]) +AC_REQUIRE([AC_C_PROTOTYPES]) +AC_CACHE_CHECK([for standard-conformant unsetenv declaration], bash_cv_std_unsetenv, +[AC_TRY_LINK([ +#if STDC_HEADERS +#include <stdlib.h> +#include <stddef.h> +#endif +#ifndef __STDC__ +# ifndef const +# define const +# endif +#endif +#ifdef PROTOTYPES +extern int unsetenv (const char *); +#else +extern int unsetenv (); +#endif +], +[return (unsetenv == 0);], +bash_cv_std_unsetenv=yes, bash_cv_std_unsetenv=no +)]) +if test $bash_cv_std_unsetenv = yes; then +AC_DEFINE(HAVE_STD_UNSETENV) +fi +]) + +AC_DEFUN([BASH_FUNC_ULIMIT_MAXFDS], +[AC_MSG_CHECKING(whether ulimit can substitute for getdtablesize) +AC_CACHE_VAL(bash_cv_ulimit_maxfds, +[AC_TRY_RUN([ +main() +{ +long maxfds = ulimit(4, 0L); +exit (maxfds == -1L); +} +], bash_cv_ulimit_maxfds=yes, bash_cv_ulimit_maxfds=no, + [AC_MSG_WARN(cannot check ulimit if cross compiling -- defaulting to no) + bash_cv_ulimit_maxfds=no] +)]) +AC_MSG_RESULT($bash_cv_ulimit_maxfds) +if test $bash_cv_ulimit_maxfds = yes; then +AC_DEFINE(ULIMIT_MAXFDS) +fi +]) + +AC_DEFUN([BASH_FUNC_GETCWD], +[AC_MSG_CHECKING([if getcwd() calls popen()]) +AC_CACHE_VAL(bash_cv_getcwd_calls_popen, +[AC_TRY_RUN([ +#include <stdio.h> +#ifdef HAVE_UNISTD_H +#include <unistd.h> +#endif + +#ifndef __STDC__ +#ifndef const +#define const +#endif +#endif + +int popen_called; + +FILE * +popen(command, type) + const char *command; + const char *type; +{ + popen_called = 1; + return (FILE *)NULL; +} + +FILE *_popen(command, type) + const char *command; + const char *type; +{ + return (popen (command, type)); +} + +int +pclose(stream) +FILE *stream; +{ + return 0; +} + +int +_pclose(stream) +FILE *stream; +{ + return 0; +} + +main() +{ + char lbuf[32]; + popen_called = 0; + getcwd(lbuf, 32); + exit (popen_called); +} +], bash_cv_getcwd_calls_popen=no, bash_cv_getcwd_calls_popen=yes, + [AC_MSG_WARN(cannot check whether getcwd calls popen if cross compiling -- defaulting to no) + bash_cv_getcwd_calls_popen=no] +)]) +AC_MSG_RESULT($bash_cv_getcwd_calls_popen) +if test $bash_cv_getcwd_calls_popen = yes; then +AC_DEFINE(GETCWD_BROKEN) +AC_LIBOBJ(getcwd) +fi +]) + +dnl +dnl This needs BASH_CHECK_SOCKLIB, but since that's not called on every +dnl system, we can't use AC_PREREQ +dnl +AC_DEFUN([BASH_FUNC_GETHOSTBYNAME], +[if test "X$bash_cv_have_gethostbyname" = "X"; then +_bash_needmsg=yes +else +AC_MSG_CHECKING(for gethostbyname in socket library) +_bash_needmsg= +fi +AC_CACHE_VAL(bash_cv_have_gethostbyname, +[AC_TRY_LINK([#include <netdb.h>], +[ struct hostent *hp; + hp = gethostbyname("localhost"); +], bash_cv_have_gethostbyname=yes, bash_cv_have_gethostbyname=no)] +) +if test "X$_bash_needmsg" = Xyes; then + AC_MSG_CHECKING(for gethostbyname in socket library) +fi +AC_MSG_RESULT($bash_cv_have_gethostbyname) +if test "$bash_cv_have_gethostbyname" = yes; then +AC_DEFINE(HAVE_GETHOSTBYNAME) +fi +]) + +AC_DEFUN([BASH_FUNC_FNMATCH_EXTMATCH], +[AC_MSG_CHECKING(if fnmatch does extended pattern matching with FNM_EXTMATCH) +AC_CACHE_VAL(bash_cv_fnm_extmatch, +[AC_TRY_RUN([ +#include <fnmatch.h> + +main() +{ +#ifdef FNM_EXTMATCH + exit (0); +#else + exit (1); +#endif +} +], bash_cv_fnm_extmatch=yes, bash_cv_fnm_extmatch=no, + [AC_MSG_WARN(cannot check FNM_EXTMATCH if cross compiling -- defaulting to no) + bash_cv_fnm_extmatch=no]) +]) +AC_MSG_RESULT($bash_cv_fnm_extmatch) +if test $bash_cv_fnm_extmatch = yes; then +AC_DEFINE(HAVE_LIBC_FNM_EXTMATCH) +fi +]) + +AH_TEMPLATE([HAVE_POSIX_SIGSETJMP], [Define if we POSIX-style sigsetjmp/siglongjmp are available]) +AC_DEFUN([BASH_FUNC_POSIX_SETJMP], +[AC_REQUIRE([BASH_SYS_SIGNAL_VINTAGE]) +AC_MSG_CHECKING(for presence of POSIX-style sigsetjmp/siglongjmp) +AC_CACHE_VAL(bash_cv_func_sigsetjmp, +[AC_TRY_RUN([ +#ifdef HAVE_UNISTD_H +#include <unistd.h> +#endif +#include <sys/types.h> +#include <signal.h> +#include <setjmp.h> + +main() +{ +#if !defined (_POSIX_VERSION) || !defined (HAVE_POSIX_SIGNALS) +exit (1); +#else + +int code; +sigset_t set, oset; +sigjmp_buf xx; + +/* get the mask */ +sigemptyset(&set); +sigemptyset(&oset); +sigprocmask(SIG_BLOCK, (sigset_t *)NULL, &set); +sigprocmask(SIG_BLOCK, (sigset_t *)NULL, &oset); + +/* save it */ +code = sigsetjmp(xx, 1); +if (code) + exit(0); /* could get sigmask and compare to oset here. */ + +/* change it */ +sigaddset(&set, SIGINT); +sigprocmask(SIG_BLOCK, &set, (sigset_t *)NULL); + +/* and siglongjmp */ +siglongjmp(xx, 10); +exit(1); +#endif +}], bash_cv_func_sigsetjmp=present, bash_cv_func_sigsetjmp=missing, + [AC_MSG_WARN(cannot check for sigsetjmp/siglongjmp if cross-compiling -- defaulting to missing) + bash_cv_func_sigsetjmp=missing] +)]) +AC_MSG_RESULT($bash_cv_func_sigsetjmp) +if test $bash_cv_func_sigsetjmp = present; then +AC_DEFINE(HAVE_POSIX_SIGSETJMP) +fi +]) + +AH_TEMPLATE([STRCOLL_BROKEN], [Define if strcoll is broken with respect to strcmp in the default locale.]) +AC_DEFUN([BASH_FUNC_STRCOLL], +[ +AC_MSG_CHECKING(whether or not strcoll and strcmp differ) +AC_CACHE_VAL(bash_cv_func_strcoll_broken, +[AC_TRY_RUN([ +#include <stdio.h> +#if defined (HAVE_LOCALE_H) +#include <locale.h> +#endif + +main(c, v) +int c; +char *v[]; +{ + int r1, r2; + char *deflocale, *defcoll; + +#ifdef HAVE_SETLOCALE + deflocale = setlocale(LC_ALL, ""); + defcoll = setlocale(LC_COLLATE, ""); +#endif + +#ifdef HAVE_STRCOLL + /* These two values are taken from tests/glob-test. */ + r1 = strcoll("abd", "aXd"); +#else + r1 = 0; +#endif + r2 = strcmp("abd", "aXd"); + + /* These two should both be greater than 0. It is permissible for + a system to return different values, as long as the sign is the + same. */ + + /* Exit with 1 (failure) if these two values are both > 0, since + this tests whether strcoll(3) is broken with respect to strcmp(3) + in the default locale. */ + exit (r1 > 0 && r2 > 0); +} +], bash_cv_func_strcoll_broken=yes, bash_cv_func_strcoll_broken=no, + [AC_MSG_WARN(cannot check strcoll if cross compiling -- defaulting to no) + bash_cv_func_strcoll_broken=no] +)]) +AC_MSG_RESULT($bash_cv_func_strcoll_broken) +if test $bash_cv_func_strcoll_broken = yes; then +AC_DEFINE(STRCOLL_BROKEN) +fi +]) + +AC_DEFUN([BASH_FUNC_PRINTF_A_FORMAT], +[AC_MSG_CHECKING([for printf floating point output in hex notation]) +AC_CACHE_VAL(bash_cv_printf_a_format, +[AC_TRY_RUN([ +#include <stdio.h> +#include <string.h> + +int +main() +{ + double y = 0.0; + char abuf[1024]; + + sprintf(abuf, "%A", y); + exit(strchr(abuf, 'P') == (char *)0); +} +], bash_cv_printf_a_format=yes, bash_cv_printf_a_format=no, + [AC_MSG_WARN(cannot check printf if cross compiling -- defaulting to no) + bash_cv_printf_a_format=no] +)]) +AC_MSG_RESULT($bash_cv_printf_a_format) +if test $bash_cv_printf_a_format = yes; then +AC_DEFINE(HAVE_PRINTF_A_FORMAT) +fi +]) + +AC_DEFUN([BASH_STRUCT_TERMIOS_LDISC], +[ +AC_CHECK_MEMBER(struct termios.c_line, AC_DEFINE(TERMIOS_LDISC), ,[ +#include <sys/types.h> +#include <termios.h> +]) +]) + +AC_DEFUN([BASH_STRUCT_TERMIO_LDISC], +[ +AC_CHECK_MEMBER(struct termio.c_line, AC_DEFINE(TERMIO_LDISC), ,[ +#include <sys/types.h> +#include <termio.h> +]) +]) + +dnl +dnl Like AC_STRUCT_ST_BLOCKS, but doesn't muck with LIBOBJS +dnl +dnl sets bash_cv_struct_stat_st_blocks +dnl +dnl unused for now; we'll see how AC_CHECK_MEMBERS works +dnl +AC_DEFUN([BASH_STRUCT_ST_BLOCKS], +[ +AC_MSG_CHECKING([for struct stat.st_blocks]) +AC_CACHE_VAL(bash_cv_struct_stat_st_blocks, +[AC_TRY_COMPILE( +[ +#include <sys/types.h> +#include <sys/stat.h> +], +[ +main() +{ +static struct stat a; +if (a.st_blocks) return 0; +return 0; +} +], bash_cv_struct_stat_st_blocks=yes, bash_cv_struct_stat_st_blocks=no) +]) +AC_MSG_RESULT($bash_cv_struct_stat_st_blocks) +if test "$bash_cv_struct_stat_st_blocks" = "yes"; then +AC_DEFINE(HAVE_STRUCT_STAT_ST_BLOCKS) +fi +]) + +AC_DEFUN([BASH_CHECK_LIB_TERMCAP], +[ +if test "X$bash_cv_termcap_lib" = "X"; then +_bash_needmsg=yes +else +AC_MSG_CHECKING(which library has the termcap functions) +_bash_needmsg= +fi +AC_CACHE_VAL(bash_cv_termcap_lib, +[AC_CHECK_LIB(termcap, tgetent, bash_cv_termcap_lib=libtermcap, + [AC_CHECK_LIB(tinfo, tgetent, bash_cv_termcap_lib=libtinfo, + [AC_CHECK_LIB(curses, tgetent, bash_cv_termcap_lib=libcurses, + [AC_CHECK_LIB(ncurses, tgetent, bash_cv_termcap_lib=libncurses, + bash_cv_termcap_lib=gnutermcap)])])])]) +if test "X$_bash_needmsg" = "Xyes"; then +AC_MSG_CHECKING(which library has the termcap functions) +fi +AC_MSG_RESULT(using $bash_cv_termcap_lib) +if test $bash_cv_termcap_lib = gnutermcap && test -z "$prefer_curses"; then +LDFLAGS="$LDFLAGS -L./lib/termcap" +TERMCAP_LIB="./lib/termcap/libtermcap.a" +TERMCAP_DEP="./lib/termcap/libtermcap.a" +elif test $bash_cv_termcap_lib = libtermcap && test -z "$prefer_curses"; then +TERMCAP_LIB=-ltermcap +TERMCAP_DEP= +elif test $bash_cv_termcap_lib = libtinfo; then +TERMCAP_LIB=-ltinfo +TERMCAP_DEP= +elif test $bash_cv_termcap_lib = libncurses; then +TERMCAP_LIB=-lncurses +TERMCAP_DEP= +else +TERMCAP_LIB=-lcurses +TERMCAP_DEP= +fi +]) + +dnl +dnl Check for the presence of getpeername in libsocket. +dnl If libsocket is present, check for libnsl and add it to LIBS if +dnl it's there, since most systems with libsocket require linking +dnl with libnsl as well. This should only be called if getpeername +dnl was not found in libc. +dnl +dnl NOTE: IF WE FIND GETPEERNAME, WE ASSUME THAT WE HAVE BIND/CONNECT +dnl AS WELL +dnl +AC_DEFUN([BASH_CHECK_LIB_SOCKET], +[ +if test "X$bash_cv_have_socklib" = "X"; then +_bash_needmsg= +else +AC_MSG_CHECKING(for socket library) +_bash_needmsg=yes +fi +AC_CACHE_VAL(bash_cv_have_socklib, +[AC_CHECK_LIB(socket, getpeername, + bash_cv_have_socklib=yes, bash_cv_have_socklib=no, -lnsl)]) +if test "X$_bash_needmsg" = Xyes; then + AC_MSG_RESULT($bash_cv_have_socklib) + _bash_needmsg= +fi +if test $bash_cv_have_socklib = yes; then + # check for libnsl, add it to LIBS if present + if test "X$bash_cv_have_libnsl" = "X"; then + _bash_needmsg= + else + AC_MSG_CHECKING(for libnsl) + _bash_needmsg=yes + fi + AC_CACHE_VAL(bash_cv_have_libnsl, + [AC_CHECK_LIB(nsl, t_open, + bash_cv_have_libnsl=yes, bash_cv_have_libnsl=no)]) + if test "X$_bash_needmsg" = Xyes; then + AC_MSG_RESULT($bash_cv_have_libnsl) + _bash_needmsg= + fi + if test $bash_cv_have_libnsl = yes; then + LIBS="-lsocket -lnsl $LIBS" + else + LIBS="-lsocket $LIBS" + fi + AC_DEFINE(HAVE_LIBSOCKET) + AC_DEFINE(HAVE_GETPEERNAME) +fi +]) + +AH_TEMPLATE([STRUCT_DIRENT_HAS_D_INO], [Define if struct dirent has a d_ino member]) +AC_DEFUN([BASH_STRUCT_DIRENT_D_INO], +[AC_REQUIRE([AC_HEADER_DIRENT]) +AC_MSG_CHECKING(if struct dirent has a d_ino member) +AC_CACHE_VAL(bash_cv_dirent_has_dino, +[AC_TRY_COMPILE([ +#include <stdio.h> +#include <sys/types.h> +#ifdef HAVE_UNISTD_H +# include <unistd.h> +#endif /* HAVE_UNISTD_H */ +#if defined(HAVE_DIRENT_H) +# include <dirent.h> +#else +# define dirent direct +# ifdef HAVE_SYS_NDIR_H +# include <sys/ndir.h> +# endif /* SYSNDIR */ +# ifdef HAVE_SYS_DIR_H +# include <sys/dir.h> +# endif /* SYSDIR */ +# ifdef HAVE_NDIR_H +# include <ndir.h> +# endif +#endif /* HAVE_DIRENT_H */ +],[ +struct dirent d; int z; z = d.d_ino; +], bash_cv_dirent_has_dino=yes, bash_cv_dirent_has_dino=no)]) +AC_MSG_RESULT($bash_cv_dirent_has_dino) +if test $bash_cv_dirent_has_dino = yes; then +AC_DEFINE(STRUCT_DIRENT_HAS_D_INO) +fi +]) + +AH_TEMPLATE([STRUCT_DIRENT_HAS_D_FILENO], [Define if struct dirent has a d_fileno member]) +AC_DEFUN([BASH_STRUCT_DIRENT_D_FILENO], +[AC_REQUIRE([AC_HEADER_DIRENT]) +AC_MSG_CHECKING(if struct dirent has a d_fileno member) +AC_CACHE_VAL(bash_cv_dirent_has_d_fileno, +[AC_TRY_COMPILE([ +#include <stdio.h> +#include <sys/types.h> +#ifdef HAVE_UNISTD_H +# include <unistd.h> +#endif /* HAVE_UNISTD_H */ +#if defined(HAVE_DIRENT_H) +# include <dirent.h> +#else +# define dirent direct +# ifdef HAVE_SYS_NDIR_H +# include <sys/ndir.h> +# endif /* SYSNDIR */ +# ifdef HAVE_SYS_DIR_H +# include <sys/dir.h> +# endif /* SYSDIR */ +# ifdef HAVE_NDIR_H +# include <ndir.h> +# endif +#endif /* HAVE_DIRENT_H */ +],[ +struct dirent d; int z; z = d.d_fileno; +], bash_cv_dirent_has_d_fileno=yes, bash_cv_dirent_has_d_fileno=no)]) +AC_MSG_RESULT($bash_cv_dirent_has_d_fileno) +if test $bash_cv_dirent_has_d_fileno = yes; then +AC_DEFINE(STRUCT_DIRENT_HAS_D_FILENO) +fi +]) + +AC_DEFUN([BASH_STRUCT_TIMEVAL], +[AC_MSG_CHECKING(for struct timeval in sys/time.h and time.h) +AC_CACHE_VAL(bash_cv_struct_timeval, +[ +AC_EGREP_HEADER(struct timeval, sys/time.h, + bash_cv_struct_timeval=yes, + AC_EGREP_HEADER(struct timeval, time.h, + bash_cv_struct_timeval=yes, + bash_cv_struct_timeval=no)) +]) +AC_MSG_RESULT($bash_cv_struct_timeval) +if test $bash_cv_struct_timeval = yes; then + AC_DEFINE(HAVE_TIMEVAL) +fi +]) + +AH_TEMPLATE([STRUCT_WINSIZE_IN_SYS_IOCTL], [Define if struct winsize is in sys/ioctl.h]) +AH_TEMPLATE([STRUCT_WINSIZE_IN_TERMIOS], [Define if struct winsize is in termios.h]) +AC_DEFUN([BASH_STRUCT_WINSIZE], +[AC_MSG_CHECKING(for struct winsize in sys/ioctl.h and termios.h) +AC_CACHE_VAL(bash_cv_struct_winsize_header, +[AC_TRY_COMPILE([#include <sys/types.h> +#include <sys/ioctl.h>], [struct winsize x;], + bash_cv_struct_winsize_header=ioctl_h, + [AC_TRY_COMPILE([#include <sys/types.h> +#include <termios.h>], [struct winsize x;], + bash_cv_struct_winsize_header=termios_h, bash_cv_struct_winsize_header=other) +])]) +if test $bash_cv_struct_winsize_header = ioctl_h; then + AC_MSG_RESULT(sys/ioctl.h) + AC_DEFINE(STRUCT_WINSIZE_IN_SYS_IOCTL) +elif test $bash_cv_struct_winsize_header = termios_h; then + AC_MSG_RESULT(termios.h) + AC_DEFINE(STRUCT_WINSIZE_IN_TERMIOS) +else + AC_MSG_RESULT(not found) +fi +]) + +dnl Check type of signal routines (posix, 4.2bsd, 4.1bsd or v7) +AH_TEMPLATE([HAVE_POSIX_SIGNALS], [Define if we have the POSIX signal routines]) +AH_TEMPLATE([HAVE_BSD_SIGNALS], [Define if we have the BSD signal routines]) +AH_TEMPLATE([HAVE_USG_SIGHOLD], [Define if we have the USG signal routines]) +AC_DEFUN([BASH_SYS_SIGNAL_VINTAGE], +[AC_REQUIRE([AC_TYPE_SIGNAL]) +AC_MSG_CHECKING(for type of signal functions) +AC_CACHE_VAL(bash_cv_signal_vintage, +[ + AC_MSG_WARN([checking for posix...]) + AC_TRY_LINK([#include <signal.h>],[ + sigset_t ss; + struct sigaction sa; + sigemptyset(&ss); sigsuspend(&ss); + sigaction(SIGINT, &sa, (struct sigaction *) 0); + sigprocmask(SIG_BLOCK, &ss, (sigset_t *) 0); + ], bash_cv_signal_vintage="posix", + [ + AC_MSG_WARN([checking for 4.2bsd...]) + AC_TRY_LINK([#include <signal.h>], [ + int mask = sigmask(SIGINT); + sigsetmask(mask); sigblock(mask); sigpause(mask); + ], bash_cv_signal_vintage="4.2bsd", + [ + AC_MSG_WARN([checking for svr3...]) + AC_TRY_LINK([ + #include <signal.h> + RETSIGTYPE foo() { }], [ + int mask = sigmask(SIGINT); + sigset(SIGINT, foo); sigrelse(SIGINT); + sighold(SIGINT); sigpause(SIGINT); + ], bash_cv_signal_vintage="svr3", bash_cv_signal_vintage="v7" + )] + )] +) +]) +AC_MSG_RESULT($bash_cv_signal_vintage) +if test "$bash_cv_signal_vintage" = "posix"; then +AC_DEFINE(HAVE_POSIX_SIGNALS) +elif test "$bash_cv_signal_vintage" = "4.2bsd"; then +AC_DEFINE(HAVE_BSD_SIGNALS) +elif test "$bash_cv_signal_vintage" = "svr3"; then +AC_DEFINE(HAVE_USG_SIGHOLD) +fi +]) + +dnl Check if the pgrp of setpgrp() can't be the pid of a zombie process. +AC_DEFUN([BASH_SYS_PGRP_SYNC], +[AC_REQUIRE([AC_FUNC_GETPGRP]) +AC_MSG_CHECKING(whether pgrps need synchronization) +AC_CACHE_VAL(bash_cv_pgrp_pipe, +[AC_TRY_RUN([ +#ifdef HAVE_UNISTD_H +# include <unistd.h> +#endif +main() +{ +# ifdef GETPGRP_VOID +# define getpgID() getpgrp() +# else +# define getpgID() getpgrp(0) +# define setpgid(x,y) setpgrp(x,y) +# endif + int pid1, pid2, fds[2]; + int status; + char ok; + + switch (pid1 = fork()) { + case -1: + exit(1); + case 0: + setpgid(0, getpid()); + exit(0); + } + setpgid(pid1, pid1); + + sleep(2); /* let first child die */ + + if (pipe(fds) < 0) + exit(2); + + switch (pid2 = fork()) { + case -1: + exit(3); + case 0: + setpgid(0, pid1); + ok = getpgID() == pid1; + write(fds[1], &ok, 1); + exit(0); + } + setpgid(pid2, pid1); + + close(fds[1]); + if (read(fds[0], &ok, 1) != 1) + exit(4); + wait(&status); + wait(&status); + exit(ok ? 0 : 5); +} +], bash_cv_pgrp_pipe=no,bash_cv_pgrp_pipe=yes, + [AC_MSG_WARN(cannot check pgrp synchronization if cross compiling -- defaulting to no) + bash_cv_pgrp_pipe=no]) +]) +AC_MSG_RESULT($bash_cv_pgrp_pipe) +if test $bash_cv_pgrp_pipe = yes; then +AC_DEFINE(PGRP_PIPE) +fi +]) + +AH_TEMPLATE([MUST_REINSTALL_SIGHANDLERS], [Define if signal handlers must be reinstalled when invoked.]) +AC_DEFUN([BASH_SYS_REINSTALL_SIGHANDLERS], +[AC_REQUIRE([AC_TYPE_SIGNAL]) +AC_REQUIRE([BASH_SYS_SIGNAL_VINTAGE]) +AC_MSG_CHECKING([if signal handlers must be reinstalled when invoked]) +AC_CACHE_VAL(bash_cv_must_reinstall_sighandlers, +[AC_TRY_RUN([ +#include <signal.h> +#ifdef HAVE_UNISTD_H +#include <unistd.h> +#endif + +typedef RETSIGTYPE sigfunc(); + +int nsigint; + +#ifdef HAVE_POSIX_SIGNALS +sigfunc * +set_signal_handler(sig, handler) + int sig; + sigfunc *handler; +{ + struct sigaction act, oact; + act.sa_handler = handler; + act.sa_flags = 0; + sigemptyset (&act.sa_mask); + sigemptyset (&oact.sa_mask); + sigaction (sig, &act, &oact); + return (oact.sa_handler); +} +#else +#define set_signal_handler(s, h) signal(s, h) +#endif + +RETSIGTYPE +sigint(s) +int s; +{ + nsigint++; +} + +main() +{ + nsigint = 0; + set_signal_handler(SIGINT, sigint); + kill((int)getpid(), SIGINT); + kill((int)getpid(), SIGINT); + exit(nsigint != 2); +} +], bash_cv_must_reinstall_sighandlers=no, bash_cv_must_reinstall_sighandlers=yes, + [AC_MSG_WARN(cannot check signal handling if cross compiling -- defaulting to no) + bash_cv_must_reinstall_sighandlers=no] +)]) +AC_MSG_RESULT($bash_cv_must_reinstall_sighandlers) +if test $bash_cv_must_reinstall_sighandlers = yes; then +AC_DEFINE(MUST_REINSTALL_SIGHANDLERS) +fi +]) + +dnl check that some necessary job control definitions are present +AC_DEFUN([BASH_SYS_JOB_CONTROL_MISSING], +[AC_REQUIRE([BASH_SYS_SIGNAL_VINTAGE]) +AC_MSG_CHECKING(for presence of necessary job control definitions) +AC_CACHE_VAL(bash_cv_job_control_missing, +[AC_TRY_RUN([ +#include <sys/types.h> +#ifdef HAVE_SYS_WAIT_H +#include <sys/wait.h> +#endif +#ifdef HAVE_UNISTD_H +#include <unistd.h> +#endif +#include <signal.h> + +/* Add more tests in here as appropriate. */ +main() +{ +/* signal type */ +#if !defined (HAVE_POSIX_SIGNALS) && !defined (HAVE_BSD_SIGNALS) +exit(1); +#endif + +/* signals and tty control. */ +#if !defined (SIGTSTP) || !defined (SIGSTOP) || !defined (SIGCONT) +exit (1); +#endif + +/* process control */ +#if !defined (WNOHANG) || !defined (WUNTRACED) +exit(1); +#endif + +/* Posix systems have tcgetpgrp and waitpid. */ +#if defined (_POSIX_VERSION) && !defined (HAVE_TCGETPGRP) +exit(1); +#endif + +#if defined (_POSIX_VERSION) && !defined (HAVE_WAITPID) +exit(1); +#endif + +/* Other systems have TIOCSPGRP/TIOCGPRGP and wait3. */ +#if !defined (_POSIX_VERSION) && !defined (HAVE_WAIT3) +exit(1); +#endif + +exit(0); +}], bash_cv_job_control_missing=present, bash_cv_job_control_missing=missing, + [AC_MSG_WARN(cannot check job control if cross-compiling -- defaulting to missing) + bash_cv_job_control_missing=missing] +)]) +AC_MSG_RESULT($bash_cv_job_control_missing) +if test $bash_cv_job_control_missing = missing; then +AC_DEFINE(JOB_CONTROL_MISSING) +fi +]) + +dnl check whether named pipes are present +dnl this requires a previous check for mkfifo, but that is awkward to specify +AC_DEFUN([BASH_SYS_NAMED_PIPES], +[AC_MSG_CHECKING(for presence of named pipes) +AC_CACHE_VAL(bash_cv_sys_named_pipes, +[AC_TRY_RUN([ +#include <sys/types.h> +#include <sys/stat.h> +#ifdef HAVE_UNISTD_H +#include <unistd.h> +#endif + +/* Add more tests in here as appropriate. */ +main() +{ +int fd, err; + +#if defined (HAVE_MKFIFO) +exit (0); +#endif + +#if !defined (S_IFIFO) && (defined (_POSIX_VERSION) && !defined (S_ISFIFO)) +exit (1); +#endif + +#if defined (NeXT) +exit (1); +#endif +err = mkdir("/tmp/bash-aclocal", 0700); +if (err < 0) { + perror ("mkdir"); + exit(1); +} +fd = mknod ("/tmp/bash-aclocal/sh-np-autoconf", 0666 | S_IFIFO, 0); +if (fd == -1) { + rmdir ("/tmp/bash-aclocal"); + exit (1); +} +close(fd); +unlink ("/tmp/bash-aclocal/sh-np-autoconf"); +rmdir ("/tmp/bash-aclocal"); +exit(0); +}], bash_cv_sys_named_pipes=present, bash_cv_sys_named_pipes=missing, + [AC_MSG_WARN(cannot check for named pipes if cross-compiling -- defaulting to missing) + bash_cv_sys_named_pipes=missing] +)]) +AC_MSG_RESULT($bash_cv_sys_named_pipes) +if test $bash_cv_sys_named_pipes = missing; then +AC_DEFINE(NAMED_PIPES_MISSING) +fi +]) + +AC_DEFUN([BASH_SYS_DEFAULT_MAIL_DIR], +[AC_MSG_CHECKING(for default mail directory) +AC_CACHE_VAL(bash_cv_mail_dir, +[if test -d /var/mail; then + bash_cv_mail_dir=/var/mail + elif test -d /var/spool/mail; then + bash_cv_mail_dir=/var/spool/mail + elif test -d /usr/mail; then + bash_cv_mail_dir=/usr/mail + elif test -d /usr/spool/mail; then + bash_cv_mail_dir=/usr/spool/mail + else + bash_cv_mail_dir=unknown + fi +]) +AC_MSG_RESULT($bash_cv_mail_dir) +AC_DEFINE_UNQUOTED(DEFAULT_MAIL_DIRECTORY, "$bash_cv_mail_dir") +]) + +AC_DEFUN([BASH_HAVE_TIOCGWINSZ], +[AC_MSG_CHECKING(for TIOCGWINSZ in sys/ioctl.h) +AC_CACHE_VAL(bash_cv_tiocgwinsz_in_ioctl, +[AC_TRY_COMPILE([#include <sys/types.h> +#include <sys/ioctl.h>], [int x = TIOCGWINSZ;], + bash_cv_tiocgwinsz_in_ioctl=yes,bash_cv_tiocgwinsz_in_ioctl=no)]) +AC_MSG_RESULT($bash_cv_tiocgwinsz_in_ioctl) +if test $bash_cv_tiocgwinsz_in_ioctl = yes; then +AC_DEFINE(GWINSZ_IN_SYS_IOCTL) +fi +]) + +AH_TEMPLATE([TIOCSTAT_IN_SYS_IOCTL], [Define if TIOCSTAT is in sys/ioctl.h]) +AC_DEFUN([BASH_HAVE_TIOCSTAT], +[AC_MSG_CHECKING(for TIOCSTAT in sys/ioctl.h) +AC_CACHE_VAL(bash_cv_tiocstat_in_ioctl, +[AC_TRY_COMPILE([#include <sys/types.h> +#include <sys/ioctl.h>], [int x = TIOCSTAT;], + bash_cv_tiocstat_in_ioctl=yes,bash_cv_tiocstat_in_ioctl=no)]) +AC_MSG_RESULT($bash_cv_tiocstat_in_ioctl) +if test $bash_cv_tiocstat_in_ioctl = yes; then +AC_DEFINE(TIOCSTAT_IN_SYS_IOCTL) +fi +]) + +AH_TEMPLATE([FIONREAD_IN_SYS_IOCTL], [Define if FIONREAD is in sys/ioctl.h]) +AC_DEFUN([BASH_HAVE_FIONREAD], +[AC_MSG_CHECKING(for FIONREAD in sys/ioctl.h) +AC_CACHE_VAL(bash_cv_fionread_in_ioctl, +[AC_TRY_COMPILE([#include <sys/types.h> +#include <sys/ioctl.h>], [int x = FIONREAD;], + bash_cv_fionread_in_ioctl=yes,bash_cv_fionread_in_ioctl=no)]) +AC_MSG_RESULT($bash_cv_fionread_in_ioctl) +if test $bash_cv_fionread_in_ioctl = yes; then +AC_DEFINE(FIONREAD_IN_SYS_IOCTL) +fi +]) + +dnl +dnl See if speed_t is declared in <sys/types.h>. Some versions of linux +dnl require a definition of speed_t each time <termcap.h> is included, +dnl but you can only get speed_t if you include <termios.h> (on some +dnl versions) or <sys/types.h> (on others). +dnl +AH_TEMPLATE([SPEED_T_IN_SYS_TYPES], [Define if speed_t is in sys/types.h]) +AC_DEFUN([BASH_CHECK_SPEED_T], +[AC_MSG_CHECKING(for speed_t in sys/types.h) +AC_CACHE_VAL(bash_cv_speed_t_in_sys_types, +[AC_TRY_COMPILE([#include <sys/types.h>], [speed_t x;], + bash_cv_speed_t_in_sys_types=yes,bash_cv_speed_t_in_sys_types=no)]) +AC_MSG_RESULT($bash_cv_speed_t_in_sys_types) +if test $bash_cv_speed_t_in_sys_types = yes; then +AC_DEFINE(SPEED_T_IN_SYS_TYPES) +fi +]) + +AH_TEMPLATE([HAVE_GETPW_DECLS], [Define if getpw functions are declared in pwd.h]) +AC_DEFUN([BASH_CHECK_GETPW_FUNCS], +[AC_MSG_CHECKING(whether getpw functions are declared in pwd.h) +AC_CACHE_VAL(bash_cv_getpw_declared, +[AC_EGREP_CPP(getpwuid, +[ +#include <sys/types.h> +#ifdef HAVE_UNISTD_H +# include <unistd.h> +#endif +#include <pwd.h> +], +bash_cv_getpw_declared=yes,bash_cv_getpw_declared=no)]) +AC_MSG_RESULT($bash_cv_getpw_declared) +if test $bash_cv_getpw_declared = yes; then +AC_DEFINE(HAVE_GETPW_DECLS) +fi +]) + +AC_DEFUN([BASH_CHECK_DEV_FD], +[AC_MSG_CHECKING(whether /dev/fd is available) +AC_CACHE_VAL(bash_cv_dev_fd, +[if test -d /dev/fd && test -r /dev/fd/0; then + bash_cv_dev_fd=standard + elif test -d /proc/self/fd && test -r /proc/self/fd/0; then + bash_cv_dev_fd=whacky + else + bash_cv_dev_fd=absent + fi +]) +AC_MSG_RESULT($bash_cv_dev_fd) +if test $bash_cv_dev_fd = "standard"; then + AC_DEFINE(HAVE_DEV_FD) + AC_DEFINE(DEV_FD_PREFIX, "/dev/fd/") +elif test $bash_cv_dev_fd = "whacky"; then + AC_DEFINE(HAVE_DEV_FD) + AC_DEFINE(DEV_FD_PREFIX, "/proc/self/fd/") +fi +]) + +AC_DEFUN([BASH_CHECK_DEV_STDIN], +[AC_MSG_CHECKING(whether /dev/stdin stdout stderr are available) +AC_CACHE_VAL(bash_cv_dev_stdin, +[if test -d /dev/fd && test -r /dev/stdin; then + bash_cv_dev_stdin=present + elif test -d /proc/self/fd && test -r /dev/stdin; then + bash_cv_dev_stdin=present + else + bash_cv_dev_stdin=absent + fi +]) +AC_MSG_RESULT($bash_cv_dev_stdin) +if test $bash_cv_dev_stdin = "present"; then + AC_DEFINE(HAVE_DEV_STDIN) +fi +]) + +dnl +dnl Check if HPUX needs _KERNEL defined for RLIMIT_* definitions +dnl +AC_DEFUN([BASH_CHECK_KERNEL_RLIMIT], +[AC_MSG_CHECKING([whether $host_os needs _KERNEL for RLIMIT defines]) +AC_CACHE_VAL(bash_cv_kernel_rlimit, +[AC_TRY_COMPILE([ +#include <sys/types.h> +#include <sys/resource.h> +], +[ + int f; + f = RLIMIT_DATA; +], bash_cv_kernel_rlimit=no, +[AC_TRY_COMPILE([ +#include <sys/types.h> +#define _KERNEL +#include <sys/resource.h> +#undef _KERNEL +], +[ + int f; + f = RLIMIT_DATA; +], bash_cv_kernel_rlimit=yes, bash_cv_kernel_rlimit=no)] +)]) +AC_MSG_RESULT($bash_cv_kernel_rlimit) +if test $bash_cv_kernel_rlimit = yes; then +AC_DEFINE(RLIMIT_NEEDS_KERNEL) +fi +]) + +dnl +dnl Check for 64-bit off_t -- used for malloc alignment +dnl +dnl C does not allow duplicate case labels, so the compile will fail if +dnl sizeof(off_t) is > 4. +dnl +AC_DEFUN([BASH_CHECK_OFF_T_64], +[AC_CACHE_CHECK(for 64-bit off_t, bash_cv_off_t_64, +AC_TRY_COMPILE([ +#ifdef HAVE_UNISTD_H +#include <unistd.h> +#endif +#include <sys/types.h> +],[ +switch (0) case 0: case (sizeof (off_t) <= 4):; +], bash_cv_off_t_64=no, bash_cv_off_t_64=yes)) +if test $bash_cv_off_t_64 = yes; then + AC_DEFINE(HAVE_OFF_T_64) +fi]) + +AC_DEFUN([BASH_CHECK_RTSIGS], +[AC_MSG_CHECKING(for unusable real-time signals due to large values) +AC_CACHE_VAL(bash_cv_unusable_rtsigs, +[AC_TRY_RUN([ +#include <sys/types.h> +#include <signal.h> + +#ifndef NSIG +# define NSIG 64 +#endif + +main () +{ + int n_sigs = 2 * NSIG; +#ifdef SIGRTMIN + int rtmin = SIGRTMIN; +#else + int rtmin = 0; +#endif + + exit(rtmin < n_sigs); +}], bash_cv_unusable_rtsigs=yes, bash_cv_unusable_rtsigs=no, + [AC_MSG_WARN(cannot check real-time signals if cross compiling -- defaulting to yes) + bash_cv_unusable_rtsigs=yes] +)]) +AC_MSG_RESULT($bash_cv_unusable_rtsigs) +if test $bash_cv_unusable_rtsigs = yes; then +AC_DEFINE(UNUSABLE_RT_SIGNALS) +fi +]) + +dnl +dnl check for availability of multibyte characters and functions +dnl +AH_TEMPLATE([HAVE_MBSRTOWCS], [Define if we have the mbsrtowcs function]) +AH_TEMPLATE([HAVE_WCWIDTH], [Define if we have the wcwidth function]) +AH_TEMPLATE([HAVE_MBSTATE_T], [Define if we have mbstate_t]) +AH_TEMPLATE([HAVE_LANGINFO_CODESET], [Define if we have nl_langinfo and CODESET]) +AC_DEFUN([BASH_CHECK_MULTIBYTE], +[ +AC_CHECK_HEADERS(wctype.h) +AC_CHECK_HEADERS(wchar.h) +AC_CHECK_HEADERS(langinfo.h) + +AC_CHECK_FUNC(mbsrtowcs, AC_DEFINE(HAVE_MBSRTOWCS)) +AC_CHECK_FUNC(wcwidth, AC_DEFINE(HAVE_WCWIDTH)) + +AC_CACHE_CHECK([for mbstate_t], bash_cv_have_mbstate_t, +[AC_TRY_RUN([ +#include <wchar.h> +int +main () +{ + mbstate_t ps; + return 0; +}], bash_cv_have_mbstate_t=yes, bash_cv_have_mbstate_t=no)]) +if test $bash_cv_have_mbstate_t = yes; then + AC_DEFINE(HAVE_MBSTATE_T) +fi + +AC_CACHE_CHECK([for nl_langinfo and CODESET], bash_cv_langinfo_codeset, +[AC_TRY_LINK( +[#include <langinfo.h>], +[char* cs = nl_langinfo(CODESET);], +bash_cv_langinfo_codeset=yes, bash_cv_langinfo_codeset=no)]) +if test $bash_cv_langinfo_codeset = yes; then + AC_DEFINE(HAVE_LANGINFO_CODESET) +fi + +]) + +dnl need: prefix exec_prefix libdir includedir CC TERMCAP_LIB +dnl require: +dnl AC_PROG_CC +dnl BASH_CHECK_LIB_TERMCAP + +AC_DEFUN([RL_LIB_READLINE_VERSION], +[ +AC_REQUIRE([BASH_CHECK_LIB_TERMCAP]) + +AC_MSG_CHECKING([version of installed readline library]) + +# What a pain in the ass this is. + +# save cpp and ld options +_save_CFLAGS="$CFLAGS" +_save_LDFLAGS="$LDFLAGS" +_save_LIBS="$LIBS" + +# Don't set ac_cv_rl_prefix if the caller has already assigned a value. This +# allows the caller to do something like $_rl_prefix=$withval if the user +# specifies --with-installed-readline=PREFIX as an argument to configure + +if test -z "$ac_cv_rl_prefix"; then +test "x$prefix" = xNONE && ac_cv_rl_prefix=$ac_default_prefix || ac_cv_rl_prefix=${prefix} +fi + +eval ac_cv_rl_includedir=${ac_cv_rl_prefix}/include +eval ac_cv_rl_libdir=${ac_cv_rl_prefix}/lib + +LIBS="$LIBS -lreadline ${TERMCAP_LIB}" +CFLAGS="$CFLAGS -I${ac_cv_rl_includedir}" +LDFLAGS="$LDFLAGS -L${ac_cv_rl_libdir}" + +AC_TRY_RUN([ +#include <stdio.h> +#include <readline/readline.h> + +main() +{ + FILE *fp; + fp = fopen("conftest.rlv", "w"); + if (fp == 0) exit(1); + fprintf(fp, "%s\n", rl_library_version ? rl_library_version : "0.0"); + fclose(fp); + exit(0); +} +], +ac_cv_rl_version=`cat conftest.rlv`, +ac_cv_rl_version='0.0', +ac_cv_rl_version='4.2') + +CFLAGS="$_save_CFLAGS" +LDFLAGS="$_save_LDFLAGS" +LIBS="$_save_LIBS" + +RL_MAJOR=0 +RL_MINOR=0 + +# ( +case "$ac_cv_rl_version" in +2*|3*|4*|5*|6*|7*|8*|9*) + RL_MAJOR=`echo $ac_cv_rl_version | sed 's:\..*$::'` + RL_MINOR=`echo $ac_cv_rl_version | sed -e 's:^.*\.::' -e 's:[[a-zA-Z]]*$::'` + ;; +esac + +# ((( +case $RL_MAJOR in +[[0-9][0-9]]) _RL_MAJOR=$RL_MAJOR ;; +[[0-9]]) _RL_MAJOR=0$RL_MAJOR ;; +*) _RL_MAJOR=00 ;; +esac + +# ((( +case $RL_MINOR in +[[0-9][0-9]]) _RL_MINOR=$RL_MINOR ;; +[[0-9]]) _RL_MINOR=0$RL_MINOR ;; +*) _RL_MINOR=00 ;; +esac + +RL_VERSION="0x${_RL_MAJOR}${_RL_MINOR}" + +# Readline versions greater than 4.2 have these defines in readline.h + +if test $ac_cv_rl_version = '0.0' ; then + AC_MSG_WARN([Could not test version of installed readline library.]) +elif test $RL_MAJOR -gt 4 || { test $RL_MAJOR = 4 && test $RL_MINOR -gt 2 ; } ; then + # set these for use by the caller + RL_PREFIX=$ac_cv_rl_prefix + RL_LIBDIR=$ac_cv_rl_libdir + RL_INCLUDEDIR=$ac_cv_rl_includedir + AC_MSG_RESULT($ac_cv_rl_version) +else + +AC_DEFINE_UNQUOTED(RL_READLINE_VERSION, $RL_VERSION, [encoded version of the installed readline library]) +AC_DEFINE_UNQUOTED(RL_VERSION_MAJOR, $RL_MAJOR, [major version of installed readline library]) +AC_DEFINE_UNQUOTED(RL_VERSION_MINOR, $RL_MINOR, [minor version of installed readline library]) + +AC_SUBST(RL_VERSION) +AC_SUBST(RL_MAJOR) +AC_SUBST(RL_MINOR) + +# set these for use by the caller +RL_PREFIX=$ac_cv_rl_prefix +RL_LIBDIR=$ac_cv_rl_libdir +RL_INCLUDEDIR=$ac_cv_rl_includedir + +AC_MSG_RESULT($ac_cv_rl_version) + +fi +]) diff --git a/openembedded/packages/readline/readline-4.3/shlink-termcap.patch b/openembedded/packages/readline/readline-4.3/shlink-termcap.patch new file mode 100644 index 0000000000..249f4e7081 --- /dev/null +++ b/openembedded/packages/readline/readline-4.3/shlink-termcap.patch @@ -0,0 +1,45 @@ + +# +# Patch managed by http://www.holgerschurig.de/patcher.html +# + +--- readline-4.3/shlib/Makefile.in~shlink-termcap ++++ readline-4.3/shlib/Makefile.in +@@ -53,11 +53,13 @@ + CFLAGS = @CFLAGS@ + LOCAL_CFLAGS = @LOCAL_CFLAGS@ -DRL_LIBRARY_VERSION='"$(RL_LIBRARY_VERSION)"' + CPPFLAGS = @CPPFLAGS@ +-LDFLAGS = @LDFLAGS@ @LOCAL_LDFLAGS@ @CFLAGS@ ++LDFLAGS = @LDFLAGS@ $(SHOBJ_LDFLAGS) $(SHLIB_XLDFLAGS) @LOCAL_LDFLAGS@ @CFLAGS@ + + DEFS = @DEFS@ + LOCAL_DEFS = @LOCAL_DEFS@ + ++TERMCAP_LIB = @TERMCAP_LIB@ ++ + # + # These values are generated for configure by ${topdir}/support/shobj-conf. + # If your system is not supported by that script, but includes facilities for +@@ -73,7 +75,7 @@ + SHOBJ_LIBS = @SHOBJ_LIBS@ + + SHLIB_XLDFLAGS = @SHLIB_XLDFLAGS@ +-SHLIB_LIBS = @SHLIB_LIBS@ ++SHLIB_LIBS = @SHLIB_LIBS@ @TERMCAP_LIB@ + SHLIB_LIBSUFF = @SHLIB_LIBSUFF@ + + SHLIB_LIBVERSION = @SHLIB_LIBVERSION@ +@@ -147,11 +149,11 @@ + + $(SHARED_READLINE): $(SHARED_OBJ) + $(RM) $@ +- $(SHOBJ_LD) ${SHOBJ_LDFLAGS} ${SHLIB_XLDFLAGS} -o $@ $(SHARED_OBJ) $(SHLIB_LIBS) ++ $(SHOBJ_LD) ${LDFLAGS} -o $@ $(SHARED_OBJ) $(SHLIB_LIBS) + + $(SHARED_HISTORY): $(SHARED_HISTOBJ) xmalloc.so + $(RM) $@ +- $(SHOBJ_LD) ${SHOBJ_LDFLAGS} ${SHLIB_XLDFLAGS} -o $@ $(SHARED_HISTOBJ) xmalloc.so $(SHLIB_LIBS) ++ $(SHOBJ_LD) ${LDFLAGS} -o $@ $(SHARED_HISTOBJ) xmalloc.so $(SHLIB_LIBS) + + # Since tilde.c is shared between readline and bash, make sure we compile + # it with the right flags when it's built as part of readline diff --git a/openembedded/packages/readline/readline-native_4.3.bb b/openembedded/packages/readline/readline-native_4.3.bb new file mode 100644 index 0000000000..e9cede7cd1 --- /dev/null +++ b/openembedded/packages/readline/readline-native_4.3.bb @@ -0,0 +1,4 @@ +include readline_${PV}.bb +inherit native +DEPENDS = "ncurses-native" +FILESPATH = "${FILE_DIRNAME}/readline-${PV}:${FILE_DIRNAME}/readline:${FILE_DIRNAME}/files:${FILE_DIRNAME}" diff --git a/openembedded/packages/readline/readline_4.3.bb b/openembedded/packages/readline/readline_4.3.bb new file mode 100644 index 0000000000..234d697dfb --- /dev/null +++ b/openembedded/packages/readline/readline_4.3.bb @@ -0,0 +1,46 @@ +DESCRIPTION = "The GNU Readline library provides a set of functions for use by applications that allow users to edit \ +command lines as they are typed in. Both Emacs and vi editing modes are available. The Readline library includes \ +additional functions to maintain a list of previously-entered command lines, to recall and perhaps reedit those \ +lines, and perform csh-like history expansion on previous commands." +SECTION = "libs" +PRIORITY = "optional" +MAINTAINER = "Greg Gilbert <greg@treke.net>" +LICENSE = "GPLv2" +DEPENDS += "ncurses" +RPROVIDES_${PN} += "readline" +LEAD_SONAME = "libreadline.so" +PR = "r2" + +SRC_URI = "ftp://ftp.cwru.edu/pub/bash/readline-${PV}.tar.gz \ + file://shlink-termcap.patch;patch=1 \ + file://acinclude.m4" +S = "${WORKDIR}/readline-${PV}" + +inherit autotools + +do_configure () { + install -m 0644 ${WORKDIR}/acinclude.m4 ${S}/ + autotools_do_configure +} + +do_install () { + autotools_do_install + # Make install doesn't properly install these + oe_libinstall -so -C shlib libhistory ${D}${libdir} + oe_libinstall -so -C shlib libreadline ${D}${libdir} +} + +do_stage() { + oe_libinstall -a libhistory ${STAGING_LIBDIR} + oe_libinstall -a libreadline ${STAGING_LIBDIR} + oe_libinstall -so -C shlib libhistory ${STAGING_LIBDIR} + oe_libinstall -so -C shlib libreadline ${STAGING_LIBDIR} + + install -d ${STAGING_INCDIR}/readline + for f in readline.h chardefs.h keymaps.h history.h tilde.h rlstdc.h \ + rlconf.h rltypedefs.h + do + install -m 0644 $f ${STAGING_INCDIR}/readline/ + done + +} diff --git a/openembedded/packages/strace/strace-4.5.12/quota.patch b/openembedded/packages/strace/strace-4.5.12/quota.patch new file mode 100644 index 0000000000..8d05da626a --- /dev/null +++ b/openembedded/packages/strace/strace-4.5.12/quota.patch @@ -0,0 +1,10 @@ +--- strace-4.5.11/resource.c.old 2005-06-28 14:44:27.000000000 +0100 ++++ strace-4.5.11/resource.c 2005-06-28 14:44:28.000000000 +0100 +@@ -36,6 +36,7 @@ + #ifdef LINUX + #include <sys/times.h> + #include <linux/kernel.h> ++#define _LINUX_QUOTA_VERSION 1 + #include <sys/quota.h> + #endif /* LINUX */ + #ifdef SUNOS4 diff --git a/openembedded/packages/strace/strace/arm-syscallent.patch b/openembedded/packages/strace/strace/arm-syscallent.patch new file mode 100644 index 0000000000..dd23ab762b --- /dev/null +++ b/openembedded/packages/strace/strace/arm-syscallent.patch @@ -0,0 +1,402 @@ +--- /dev/null Fri Apr 23 21:29:25 2004 ++++ strace-4.5.4/linux/arm/syscallent.h Thu Sep 2 13:42:52 2004 +@@ -0,0 +1,399 @@ ++/* ++ * Copyright (c) 1993 Branko Lankester <branko@hacktic.nl> ++ * Copyright (c) 1993, 1994, 1995 Rick Sladkey <jrs@world.std.com> ++ * All rights reserved. ++ * ++ * Redistribution and use in source and binary forms, with or without ++ * modification, are permitted provided that the following conditions ++ * are met: ++ * 1. Redistributions of source code must retain the above copyright ++ * notice, this list of conditions and the following disclaimer. ++ * 2. Redistributions in binary form must reproduce the above copyright ++ * notice, this list of conditions and the following disclaimer in the ++ * documentation and/or other materials provided with the distribution. ++ * 3. The name of the author may not be used to endorse or promote products ++ * derived from this software without specific prior written permission. ++ * ++ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR ++ * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES ++ * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. ++ * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, ++ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT ++ * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, ++ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY ++ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT ++ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF ++ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ++ * ++ * $Id: syscallent.h,v 1.26 2004/04/16 21:48:44 roland Exp $ ++ */ ++ ++ { 0, 0, sys_setup, "setup" }, /* 0 */ ++ { 1, TP, sys_exit, "_exit" }, /* 1 */ ++ { 0, TP, sys_fork, "fork" }, /* 2 */ ++ { 3, 0, sys_read, "read" }, /* 3 */ ++ { 3, 0, sys_write, "write" }, /* 4 */ ++ { 3, TF, sys_open, "open" }, /* 5 */ ++ { 1, 0, sys_close, "close" }, /* 6 */ ++ { 3, TP, sys_waitpid, "waitpid" }, /* 7 */ ++ { 2, TF, sys_creat, "creat" }, /* 8 */ ++ { 2, TF, sys_link, "link" }, /* 9 */ ++ { 1, TF, sys_unlink, "unlink" }, /* 10 */ ++ { 3, TF|TP, sys_execve, "execve" }, /* 11 */ ++ { 1, TF, sys_chdir, "chdir" }, /* 12 */ ++ { 1, 0, sys_time, "time" }, /* 13 */ ++ { 3, TF, sys_mknod, "mknod" }, /* 14 */ ++ { 2, TF, sys_chmod, "chmod" }, /* 15 */ ++#ifdef M68K ++ { 3, TF, sys_chown, "chown" }, /* 16 */ ++#else ++ { 3, TF, sys_chown, "lchown" }, /* 16 */ ++#endif ++ { 0, 0, sys_break, "break" }, /* 17 */ ++ { 2, TF, sys_oldstat, "oldstat" }, /* 18 */ ++ { 3, 0, sys_lseek, "lseek" }, /* 19 */ ++ { 0, 0, sys_getpid, "getpid" }, /* 20 */ ++ { 5, TF, sys_mount, "mount" }, /* 21 */ ++ { 1, TF, sys_umount, "oldumount" }, /* 22 */ ++ { 1, 0, sys_setuid, "setuid" }, /* 23 */ ++ { 0, 0, sys_getuid, "getuid" }, /* 24 */ ++ { 1, 0, sys_stime, "stime" }, /* 25 */ ++ { 4, 0, sys_ptrace, "ptrace" }, /* 26 */ ++ { 1, 0, sys_alarm, "alarm" }, /* 27 */ ++ { 2, 0, sys_oldfstat, "oldfstat" }, /* 28 */ ++ { 0, TS, sys_pause, "pause" }, /* 29 */ ++ { 2, TF, sys_utime, "utime" }, /* 30 */ ++ { 2, 0, sys_stty, "stty" }, /* 31 */ ++ { 2, 0, sys_gtty, "gtty" }, /* 32 */ ++ { 2, TF, sys_access, "access" }, /* 33 */ ++ { 1, 0, sys_nice, "nice" }, /* 34 */ ++ { 0, 0, sys_ftime, "ftime" }, /* 35 */ ++ { 0, 0, sys_sync, "sync" }, /* 36 */ ++ { 2, TS, sys_kill, "kill" }, /* 37 */ ++ { 2, TF, sys_rename, "rename" }, /* 38 */ ++ { 2, TF, sys_mkdir, "mkdir" }, /* 39 */ ++ { 1, TF, sys_rmdir, "rmdir" }, /* 40 */ ++ { 1, 0, sys_dup, "dup" }, /* 41 */ ++ { 1, 0, sys_pipe, "pipe" }, /* 42 */ ++ { 1, 0, sys_times, "times" }, /* 43 */ ++ { 0, 0, sys_prof, "prof" }, /* 44 */ ++ { 1, 0, sys_brk, "brk" }, /* 45 */ ++ { 1, 0, sys_setgid, "setgid" }, /* 46 */ ++ { 0, 0, sys_getgid, "getgid" }, /* 47 */ ++ { 3, TS, sys_signal, "signal" }, /* 48 */ ++ { 0, 0, sys_geteuid, "geteuid" }, /* 49 */ ++ { 0, 0, sys_getegid, "getegid" }, /* 50 */ ++ { 1, TF, sys_acct, "acct" }, /* 51 */ ++ { 2, TF, sys_umount2, "umount" }, /* 52 */ ++ { 0, 0, sys_lock, "lock" }, /* 53 */ ++ { 3, 0, sys_ioctl, "ioctl" }, /* 54 */ ++ { 3, 0, sys_fcntl, "fcntl" }, /* 55 */ ++ { 0, 0, sys_mpx, "mpx" }, /* 56 */ ++ { 2, 0, sys_setpgid, "setpgid" }, /* 57 */ ++ { 2, 0, sys_ulimit, "ulimit" }, /* 58 */ ++ { 1, 0, sys_oldolduname, "oldolduname" }, /* 59 */ ++ { 1, 0, sys_umask, "umask" }, /* 60 */ ++ { 1, TF, sys_chroot, "chroot" }, /* 61 */ ++ { 2, 0, sys_ustat, "ustat" }, /* 62 */ ++ { 2, 0, sys_dup2, "dup2" }, /* 63 */ ++ { 0, 0, sys_getppid, "getppid" }, /* 64 */ ++ { 0, 0, sys_getpgrp, "getpgrp" }, /* 65 */ ++ { 0, 0, sys_setsid, "setsid" }, /* 66 */ ++ { 3, TS, sys_sigaction, "sigaction" }, /* 67 */ ++ { 0, TS, sys_siggetmask, "siggetmask" }, /* 68 */ ++ { 1, TS, sys_sigsetmask, "sigsetmask" }, /* 69 */ ++ { 2, 0, sys_setreuid, "setreuid" }, /* 70 */ ++ { 2, 0, sys_setregid, "setregid" }, /* 71 */ ++ { 3, TS, sys_sigsuspend, "sigsuspend" }, /* 72 */ ++ { 1, TS, sys_sigpending, "sigpending" }, /* 73 */ ++ { 2, 0, sys_sethostname, "sethostname" }, /* 74 */ ++ { 2, 0, sys_setrlimit, "setrlimit" }, /* 75 */ ++ { 2, 0, sys_getrlimit, "old_getrlimit" }, /* 76 */ ++ { 2, 0, sys_getrusage, "getrusage" }, /* 77 */ ++ { 2, 0, sys_gettimeofday, "gettimeofday" }, /* 78 */ ++ { 2, 0, sys_settimeofday, "settimeofday" }, /* 79 */ ++ { 2, 0, sys_getgroups, "getgroups" }, /* 80 */ ++ { 2, 0, sys_setgroups, "setgroups" }, /* 81 */ ++ { 1, 0, sys_oldselect, "oldselect" }, /* 82 */ ++ { 2, TF, sys_symlink, "symlink" }, /* 83 */ ++ { 2, TF, sys_oldlstat, "oldlstat" }, /* 84 */ ++ { 3, TF, sys_readlink, "readlink" }, /* 85 */ ++ { 1, TF, sys_uselib, "uselib" }, /* 86 */ ++ { 1, TF, sys_swapon, "swapon" }, /* 87 */ ++ { 3, 0, sys_reboot, "reboot" }, /* 88 */ ++ { 3, 0, sys_readdir, "readdir" }, /* 89 */ ++ { 6, 0, sys_old_mmap, "old_mmap" }, /* 90 */ ++ { 2, 0, sys_munmap, "munmap" }, /* 91 */ ++ { 2, TF, sys_truncate, "truncate" }, /* 92 */ ++ { 2, 0, sys_ftruncate, "ftruncate" }, /* 93 */ ++ { 2, 0, sys_fchmod, "fchmod" }, /* 94 */ ++ { 3, 0, sys_fchown, "fchown" }, /* 95 */ ++ { 2, 0, sys_getpriority, "getpriority" }, /* 96 */ ++ { 3, 0, sys_setpriority, "setpriority" }, /* 97 */ ++ { 4, 0, sys_profil, "profil" }, /* 98 */ ++ { 2, TF, sys_statfs, "statfs" }, /* 99 */ ++ { 2, 0, sys_fstatfs, "fstatfs" }, /* 100 */ ++ { 3, 0, sys_ioperm, "ioperm" }, /* 101 */ ++ { 2, 0, sys_socketcall, "socketcall" }, /* 102 */ ++ { 3, 0, sys_syslog, "syslog" }, /* 103 */ ++ { 3, 0, sys_setitimer, "setitimer" }, /* 104 */ ++ { 2, 0, sys_getitimer, "getitimer" }, /* 105 */ ++ { 2, TF, sys_stat, "stat" }, /* 106 */ ++ { 2, TF, sys_lstat, "lstat" }, /* 107 */ ++ { 2, 0, sys_fstat, "fstat" }, /* 108 */ ++ { 1, 0, sys_olduname, "olduname" }, /* 109 */ ++ { 1, 0, sys_iopl, "iopl" }, /* 110 */ ++ { 0, 0, sys_vhangup, "vhangup" }, /* 111 */ ++ { 0, 0, sys_idle, "idle" }, /* 112 */ ++ { 1, 0, sys_vm86old, "vm86old" }, /* 113 */ ++ { 4, TP, sys_wait4, "wait4" }, /* 114 */ ++ { 1, 0, sys_swapoff, "swapoff" }, /* 115 */ ++ { 1, 0, sys_sysinfo, "sysinfo" }, /* 116 */ ++ { 6, 0, sys_ipc, "ipc" }, /* 117 */ ++ { 1, 0, sys_fsync, "fsync" }, /* 118 */ ++ { 1, TS, sys_sigreturn, "sigreturn" }, /* 119 */ ++ { 5, TP, sys_clone, "clone" }, /* 120 */ ++ { 2, 0, sys_setdomainname, "setdomainname" }, /* 121 */ ++ { 1, 0, sys_uname, "uname" }, /* 122 */ ++#ifdef M68K ++ { 4, 0, sys_cacheflush, "cacheflush" }, /* 123 */ ++#else ++ { 3, 0, sys_modify_ldt, "modify_ldt" }, /* 123 */ ++#endif ++ { 1, 0, sys_adjtimex, "adjtimex" }, /* 124 */ ++ { 3, 0, sys_mprotect, "mprotect" }, /* 125 */ ++ { 3, TS, sys_sigprocmask, "sigprocmask" }, /* 126 */ ++ { 2, 0, sys_create_module, "create_module" }, /* 127 */ ++ { 2, 0, sys_init_module, "init_module" }, /* 128 */ ++ { 1, 0, sys_delete_module, "delete_module" }, /* 129 */ ++ { 1, 0, sys_get_kernel_syms, "get_kernel_syms"}, /* 130 */ ++ { 4, 0, sys_quotactl, "quotactl" }, /* 131 */ ++ { 1, 0, sys_getpgid, "getpgid" }, /* 132 */ ++ { 1, 0, sys_fchdir, "fchdir" }, /* 133 */ ++ { 0, 0, sys_bdflush, "bdflush" }, /* 134 */ ++ { 3, 0, sys_sysfs, "sysfs" }, /* 135 */ ++ { 1, 0, sys_personality, "personality" }, /* 136 */ ++ { 5, 0, sys_afs_syscall, "afs_syscall" }, /* 137 */ ++ { 1, 0, sys_setfsuid, "setfsuid" }, /* 138 */ ++ { 1, 0, sys_setfsgid, "setfsgid" }, /* 139 */ ++ { 5, 0, sys_llseek, "_llseek" }, /* 140 */ ++ { 3, 0, sys_getdents, "getdents" }, /* 141 */ ++ { 5, 0, sys_select, "select" }, /* 142 */ ++ { 2, 0, sys_flock, "flock" }, /* 143 */ ++ { 3, 0, sys_msync, "msync" }, /* 144 */ ++ { 3, 0, sys_readv, "readv" }, /* 145 */ ++ { 3, 0, sys_writev, "writev" }, /* 146 */ ++ { 1, 0, sys_getsid, "getsid" }, /* 147 */ ++ { 1, 0, sys_fdatasync, "fdatasync" }, /* 148 */ ++ { 1, 0, sys_sysctl, "_sysctl" }, /* 149 */ ++ { 2, 0, sys_mlock, "mlock" }, /* 150 */ ++ { 2, 0, sys_munlock, "munlock" }, /* 151 */ ++ { 2, 0, sys_mlockall, "mlockall" }, /* 152 */ ++ { 0, 0, sys_munlockall, "munlockall" }, /* 153 */ ++ { 0, 0, sys_sched_setparam, "sched_setparam"}, /* 154 */ ++ { 2, 0, sys_sched_getparam, "sched_getparam"}, /* 155 */ ++ { 3, 0, sys_sched_setscheduler, "sched_setscheduler"}, /* 156 */ ++ { 1, 0, sys_sched_getscheduler, "sched_getscheduler"}, /* 157 */ ++ { 0, 0, sys_sched_yield, "sched_yield"}, /* 158 */ ++ { 1, 0, sys_sched_get_priority_max,"sched_get_priority_max"}, /* 159 */ ++ { 1, 0, sys_sched_get_priority_min,"sched_get_priority_min"}, /* 160 */ ++ { 2, 0, sys_sched_rr_get_interval,"sched_rr_get_interval"}, /* 161 */ ++ { 2, 0, sys_nanosleep, "nanosleep" }, /* 162 */ ++ { 4, 0, sys_mremap, "mremap" }, /* 163 */ ++ { 3, 0, sys_setresuid, "setresuid" }, /* 164 */ ++ { 3, 0, sys_getresuid, "getresuid" }, /* 165 */ ++#ifdef M68K ++ { 5, 0, printargs, "SYS_166" }, /* 166 */ ++#else ++ { 5, 0, printargs, "vm86" }, /* 166 */ ++#endif ++ { 5, 0, sys_query_module, "query_module" }, /* 167 */ ++ { 3, 0, sys_poll, "poll" }, /* 168 */ ++ { 3, 0, printargs, "nfsservctl" }, /* 169 */ ++ { 3, 0, sys_setresgid, "setresgid" }, /* 170 */ ++ { 3, 0, sys_getresgid, "getresgid" }, /* 171 */ ++ { 5, 0, printargs, "prctl" }, /* 172 */ ++ { 1, TS, printargs, "rt_sigreturn" }, /* 173 */ ++ { 4, TS, sys_rt_sigaction, "rt_sigaction" }, /* 174 */ ++ { 4, TS, sys_rt_sigprocmask, "rt_sigprocmask"}, /* 175 */ ++ { 2, TS, sys_rt_sigpending, "rt_sigpending" }, /* 176 */ ++ { 4, TS, sys_rt_sigtimedwait, "rt_sigtimedwait"}, /* 177 */ ++ { 3, TS, sys_rt_sigqueueinfo, "rt_sigqueueinfo"}, /* 178 */ ++ { 2, TS, sys_rt_sigsuspend, "rt_sigsuspend" }, /* 179 */ ++ ++ { 5, TF, sys_pread, "pread" }, /* 180 */ ++ { 5, TF, sys_pwrite, "pwrite" }, /* 181 */ ++#ifdef M68K ++ { 3, TF, sys_chown, "lchown" }, /* 182 */ ++#else ++ { 3, TF, sys_chown, "chown" }, /* 182 */ ++#endif ++ { 2, TF, sys_getcwd, "getcwd" }, /* 183 */ ++ { 2, 0, sys_capget, "capget" }, /* 184 */ ++ { 2, 0, sys_capset, "capset" }, /* 185 */ ++ { 2, TS, sys_sigaltstack, "sigaltstack" }, /* 186 */ ++ { 4, TF, sys_sendfile, "sendfile" }, /* 187 */ ++ { 5, 0, sys_getpmsg, "getpmsg" }, /* 188 */ ++ { 5, 0, sys_putpmsg, "putpmsg" }, /* 189 */ ++ { 0, TP, sys_vfork, "vfork" }, /* 190 */ ++ { 2, 0, sys_getrlimit, "getrlimit" }, /* 191 */ ++ { 6, 0, sys_mmap, "mmap2" }, /* 192 */ ++ { 3, TF, sys_truncate64, "truncate64" }, /* 193 */ ++ { 3, TF, sys_ftruncate64, "ftruncate64" }, /* 194 */ ++ { 2, TF, sys_stat64, "stat64" }, /* 195 */ ++ { 2, TF, sys_lstat64, "lstat64" }, /* 196 */ ++ { 2, TF, sys_fstat64, "fstat64" }, /* 197 */ ++ { 3, TF, sys_chown, "lchown32" }, /* 198 */ ++ { 0, 0, sys_getuid, "getuid32" }, /* 199 */ ++ ++ { 0, 0, sys_getgid, "getgid32" }, /* 200 */ ++ { 0, 0, sys_geteuid, "geteuid32" }, /* 201 */ ++ { 0, 0, sys_geteuid, "getegid32" }, /* 202 */ ++ { 2, 0, sys_setreuid, "setreuid32" }, /* 203 */ ++ { 2, 0, sys_setregid, "setregid32" }, /* 204 */ ++ { 2, 0, sys_getgroups32, "getgroups32" }, /* 205 */ ++ { 2, 0, sys_setgroups32, "setgroups32" }, /* 206 */ ++ { 3, 0, sys_fchown, "fchown32" }, /* 207 */ ++ { 3, 0, sys_setresuid, "setresuid32" }, /* 208 */ ++ { 3, 0, sys_getresuid, "getresuid32" }, /* 209 */ ++ { 3, 0, sys_setresgid, "setresgid32" }, /* 210 */ ++ { 3, 0, sys_getresgid, "getresgid32" }, /* 211 */ ++ { 3, TF, sys_chown, "chown32" }, /* 212 */ ++ { 1, 0, sys_setuid, "setuid32" }, /* 213 */ ++ { 1, 0, sys_setgid, "setgid32" }, /* 214 */ ++ { 1, 0, sys_setfsuid, "setfsuid32" }, /* 215 */ ++ { 1, 0, sys_setfsgid, "setfsgid32" }, /* 216 */ ++ { 4, 0, sys_getdents64, "getdents64" }, /* 217 */ ++ { 2, TF, sys_pivotroot, "pivot_root" }, /* 218 */ ++ { 3, 0, printargs, "mincore" }, /* 219 */ ++ { 3, 0, sys_madvise, "madvise" }, /* 220 */ ++ { 3, 0, sys_fcntl, "fcntl64" }, /* 221 */ ++ { 4, 0, printargs, "SYS_222" }, /* 222 */ ++/*TODO*/{ 5, 0, printargs, "security" }, /* 223 */ ++ { 0, 0, printargs, "gettid" }, /* 224 */ ++ { 4, 0, sys_readahead, "readahead" }, /* 225 */ ++ { 5, TF, sys_setxattr, "setxattr" }, /* 226 */ ++ { 5, TF, sys_setxattr, "lsetxattr" }, /* 227 */ ++ { 5, 0, sys_fsetxattr, "fsetxattr" }, /* 228 */ ++ { 4, TF, sys_getxattr, "getxattr" }, /* 229 */ ++ { 4, TF, sys_getxattr, "lgetxattr" }, /* 230 */ ++ { 4, 0, sys_fgetxattr, "fgetxattr" }, /* 231 */ ++ { 3, TF, sys_listxattr, "listxattr" }, /* 232 */ ++ { 3, TF, sys_listxattr, "llistxattr" }, /* 233 */ ++ { 3, 0, sys_flistxattr, "flistxattr" }, /* 234 */ ++ { 2, TF, sys_removexattr, "removexattr" }, /* 235 */ ++ { 2, TF, sys_removexattr, "lremovexattr" }, /* 236 */ ++ { 2, 0, sys_fremovexattr, "fremovexattr" }, /* 237 */ ++ { 2, TS, sys_kill, "tkill" }, /* 238 */ ++ { 4, TF, sys_sendfile64, "sendfile64" }, /* 239 */ ++ { 5, 0, sys_futex, "futex" }, /* 240 */ ++ { 3, 0, sys_sched_setaffinity, "sched_setaffinity" },/* 241 */ ++ { 3, 0, sys_sched_getaffinity, "sched_getaffinity" },/* 242 */ ++ { 1, 0, sys_set_thread_area, "set_thread_area" }, /* 243 */ ++ { 1, 0, sys_get_thread_area, "get_thread_area" }, /* 244 */ ++ { 2, 0, printargs, "io_setup" }, /* 245 */ ++ { 1, 0, printargs, "io_destroy" }, /* 246 */ ++ { 5, 0, printargs, "io_getevents" }, /* 247 */ ++ { 3, 0, printargs, "io_submit" }, /* 248 */ ++ { 3, 0, printargs, "io_cancel" }, /* 249 */ ++ { 5, 0, printargs, "SYS_250" }, /* 250 */ ++ { 5, 0, printargs, "SYS_251" }, /* 251 */ ++ { 1, TP, sys_exit, "exit_group" }, /* 252 */ ++ { 4, 0, printargs, "lookup_dcookie"}, /* 253 */ ++ { 1, 0, printargs, "epoll_create" }, /* 254 */ ++ { 4, 0, printargs, "epoll_ctl" }, /* 255 */ ++ { 4, 0, printargs, "epoll_wait" }, /* 256 */ ++ { 5, 0, sys_remap_file_pages, "remap_file_pages"}, /* 257 */ ++ { 1, 0, printargs, "set_tid_address"}, /* 258 */ ++ { 3, 0, sys_timer_create, "timer_create" }, /* 259 */ ++ { 4, 0, sys_timer_settime, "timer_settime" }, /* 260 */ ++ { 2, 0, sys_timer_gettime, "timer_gettime" }, /* 261 */ ++ { 1, 0, sys_timer_getoverrun, "timer_getoverrun"}, /* 262 */ ++ { 1, 0, sys_timer_delete, "timer_delete" }, /* 263 */ ++ { 2, 0, sys_clock_settime, "clock_settime" }, /* 264 */ ++ { 2, 0, sys_clock_gettime, "clock_gettime" }, /* 265 */ ++ { 2, 0, sys_clock_getres, "clock_getres" }, /* 266 */ ++ { 4, 0, sys_clock_nanosleep, "clock_nanosleep"}, /* 267 */ ++ { 3, TF, sys_statfs64, "statfs64" }, /* 268 */ ++ { 3, 0, sys_fstatfs64, "fstatfs64" }, /* 269 */ ++ { 3, TS, sys_tgkill, "tgkill" }, /* 270 */ ++ { 2, TF, sys_utimes, "utimes" }, /* 271 */ ++ { 5, 0, printargs, "SYS_272" }, /* 272 */ ++ { 5, 0, printargs, "SYS_273" }, /* 273 */ ++ { 5, 0, printargs, "SYS_274" }, /* 274 */ ++ { 5, 0, printargs, "SYS_275" }, /* 275 */ ++ { 5, 0, printargs, "SYS_276" }, /* 276 */ ++ { 4, 0, sys_mq_open, "mq_open" }, /* 277 */ ++ { 1, 0, sys_mq_unlink, "mq_unlink" }, /* 278 */ ++ { 5, 0, sys_mq_timedsend, "mq_timedsend" }, /* 279 */ ++ { 5, 0, sys_mq_timedreceive, "mq_timedreceive" }, /* 280 */ ++ { 2, 0, sys_mq_notify, "mq_notify" }, /* 281 */ ++ { 3, 0, sys_mq_getsetattr, "mq_getsetattr" }, /* 282 */ ++ { 5, 0, printargs, "SYS_283" }, /* 283 */ ++ { 5, 0, printargs, "SYS_284" }, /* 284 */ ++ { 5, 0, printargs, "SYS_285" }, /* 285 */ ++ { 5, 0, printargs, "SYS_286" }, /* 286 */ ++ { 5, 0, printargs, "SYS_287" }, /* 287 */ ++ { 5, 0, printargs, "SYS_288" }, /* 288 */ ++ { 5, 0, printargs, "SYS_289" }, /* 289 */ ++ { 5, 0, printargs, "SYS_290" }, /* 290 */ ++ { 5, 0, printargs, "SYS_291" }, /* 291 */ ++ { 5, 0, printargs, "SYS_292" }, /* 292 */ ++ { 5, 0, printargs, "SYS_293" }, /* 293 */ ++ { 5, 0, printargs, "SYS_294" }, /* 294 */ ++ { 5, 0, printargs, "SYS_295" }, /* 295 */ ++ { 5, 0, printargs, "SYS_296" }, /* 296 */ ++ { 5, 0, printargs, "SYS_297" }, /* 297 */ ++ { 5, 0, printargs, "SYS_298" }, /* 298 */ ++ { 5, 0, printargs, "SYS_299" }, /* 299 */ ++ ++#if SYS_socket_subcall != 300 && !defined X86_64 /* pers1 broken on x86-64 */ ++ #error fix me ++#endif ++ { 8, 0, printargs, "socket_subcall"}, /* 300 */ ++ { 3, TN, sys_socket, "socket" }, /* 301 */ ++ { 3, TN, sys_bind, "bind" }, /* 302 */ ++ { 3, TN, sys_connect, "connect" }, /* 303 */ ++ { 2, TN, sys_listen, "listen" }, /* 304 */ ++ { 3, TN, sys_accept, "accept" }, /* 305 */ ++ { 3, TN, sys_getsockname, "getsockname" }, /* 306 */ ++ { 3, TN, sys_getpeername, "getpeername" }, /* 307 */ ++ { 4, TN, sys_socketpair, "socketpair" }, /* 308 */ ++ { 4, TN, sys_send, "send" }, /* 309 */ ++ { 4, TN, sys_recv, "recv" }, /* 310 */ ++ { 6, TN, sys_sendto, "sendto" }, /* 311 */ ++ { 6, TN, sys_recvfrom, "recvfrom" }, /* 312 */ ++ { 2, TN, sys_shutdown, "shutdown" }, /* 313 */ ++ { 5, TN, sys_setsockopt, "setsockopt" }, /* 314 */ ++ { 5, TN, sys_getsockopt, "getsockopt" }, /* 315 */ ++ { 5, TN, sys_sendmsg, "sendmsg" }, /* 316 */ ++ { 5, TN, sys_recvmsg, "recvmsg" }, /* 317 */ ++ ++#if SYS_ipc_subcall != 318 && !defined X86_64 /* pers1 broken on x86-64 */ ++ #error fix me ++#endif ++ { 4, 0, printargs, "ipc_subcall" }, /* 318 */ ++ { 4, TI, sys_semop, "semop" }, /* 319 */ ++ { 4, TI, sys_semget, "semget" }, /* 320 */ ++ { 4, TI, sys_semctl, "semctl" }, /* 321 */ ++ { 5, TI, sys_semtimedop, "semtimedop" }, /* 322 */ ++ { 4, 0, printargs, "ipc_subcall" }, /* 323 */ ++ { 4, 0, printargs, "ipc_subcall" }, /* 324 */ ++ { 4, 0, printargs, "ipc_subcall" }, /* 325 */ ++ { 4, 0, printargs, "ipc_subcall" }, /* 326 */ ++ { 4, 0, printargs, "ipc_subcall" }, /* 327 */ ++ { 4, 0, printargs, "ipc_subcall" }, /* 328 */ ++ { 4, TI, sys_msgsnd, "msgsnd" }, /* 329 */ ++ { 4, TI, sys_msgrcv, "msgrcv" }, /* 330 */ ++ { 4, TI, sys_msgget, "msgget" }, /* 331 */ ++ { 4, TI, sys_msgctl, "msgctl" }, /* 332 */ ++ { 4, 0, printargs, "ipc_subcall" }, /* 333 */ ++ { 4, 0, printargs, "ipc_subcall" }, /* 334 */ ++ { 4, 0, printargs, "ipc_subcall" }, /* 335 */ ++ { 4, 0, printargs, "ipc_subcall" }, /* 336 */ ++ { 4, 0, printargs, "ipc_subcall" }, /* 337 */ ++ { 4, 0, printargs, "ipc_subcall" }, /* 338 */ ++ { 4, TI, sys_shmat, "shmat" }, /* 339 */ ++ { 4, TI, sys_shmdt, "shmdt" }, /* 340 */ ++ { 4, TI, sys_shmget, "shmget" }, /* 341 */ ++ { 4, TI, sys_shmctl, "shmctl" }, /* 342 */ diff --git a/openembedded/packages/strace/strace_4.5.12.bb b/openembedded/packages/strace/strace_4.5.12.bb new file mode 100644 index 0000000000..95a5b7fa9b --- /dev/null +++ b/openembedded/packages/strace/strace_4.5.12.bb @@ -0,0 +1,13 @@ +LICENSE = "GPL" +SECTION = "console/utils" +PR = "r0" + +DESCRIPTION = "strace is a system call tracing tool." + +SRC_URI = "${SOURCEFORGE_MIRROR}/strace/strace-${PV}.tar.bz2 \ + file://arm-syscallent.patch;patch=1 \ + file://quota.patch;patch=1" + +inherit autotools + +export INCLUDES = "-I. -I./linux" |