diff options
author | Ian Lance Taylor <ian@airs.com> | 1996-08-07 18:23:08 +0000 |
---|---|---|
committer | Ian Lance Taylor <ian@airs.com> | 1996-08-07 18:23:08 +0000 |
commit | 5cece5267784495835c2fb2fb4141612d4c3c02b (patch) | |
tree | a7d7b04d6fca609aa19a2c99636365f51f327356 /gas | |
parent | 85fe9d3e46ca45f86886f8baf9aa21fa6ec2ece7 (diff) | |
download | gdb-5cece5267784495835c2fb2fb4141612d4c3c02b.zip gdb-5cece5267784495835c2fb2fb4141612d4c3c02b.tar.gz gdb-5cece5267784495835c2fb2fb4141612d4c3c02b.tar.bz2 |
Wed Aug 7 14:19:03 1996 Philippe De Muyter <phdm@info.ucl.ac.be>
* configure.in: Make GAS_CHECK_DECL_NEEDED include <string.h> or
<strings.h> if they exist. Call GAS_CHECK_DECL_NEEDED on strstr
and sbrk.
* acconfig.h (NEED_DECLARATION_STRSTR): New macro.
(NEED_DECLARATION_SBRK): New macro.
* configure, conf.in: Rebuild.
* as.h: Only include <strings.h> if HAVE_STRINGS_H.
(strstr): Declare if NEED_DECLARATION_STRSTR.
* as.c: If HAVE_SBRK and NEED_DECLARATION_SBRK, declare sbrk.
Diffstat (limited to 'gas')
-rw-r--r-- | gas/ChangeLog | 12 | ||||
-rw-r--r-- | gas/acconfig.h | 6 | ||||
-rw-r--r-- | gas/as.h | 10 | ||||
-rw-r--r-- | gas/conf.in | 6 | ||||
-rwxr-xr-x | gas/configure | 88 | ||||
-rw-r--r-- | gas/configure.in | 6 |
6 files changed, 117 insertions, 11 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog index 2fe618d..6380931 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,15 @@ +Wed Aug 7 14:19:03 1996 Philippe De Muyter <phdm@info.ucl.ac.be> + + * configure.in: Make GAS_CHECK_DECL_NEEDED include <string.h> or + <strings.h> if they exist. Call GAS_CHECK_DECL_NEEDED on strstr + and sbrk. + * acconfig.h (NEED_DECLARATION_STRSTR): New macro. + (NEED_DECLARATION_SBRK): New macro. + * configure, conf.in: Rebuild. + * as.h: Only include <strings.h> if HAVE_STRINGS_H. + (strstr): Declare if NEED_DECLARATION_STRSTR. + * as.c: If HAVE_SBRK and NEED_DECLARATION_SBRK, declare sbrk. + Wed Aug 7 11:50:26 1996 Ian Lance Taylor <ian@cygnus.com> * config/tc-mips.c (md_section_align): Do align if OBJ_ELF, but diff --git a/gas/acconfig.h b/gas/acconfig.h index 1626d38..d2ca454 100644 --- a/gas/acconfig.h +++ b/gas/acconfig.h @@ -17,12 +17,18 @@ #undef TARGET_OS #undef TARGET_VENDOR +/* Sometimes the system header files don't declare strstr. */ +#undef NEED_DECLARATION_STRSTR + /* Sometimes the system header files don't declare malloc and realloc. */ #undef NEED_DECLARATION_MALLOC /* Sometimes the system header files don't declare free. */ #undef NEED_DECLARATION_FREE +/* Sometimes the system header files don't declare sbrk. */ +#undef NEED_DECLARATION_SBRK + /* Sometimes errno.h doesn't declare errno itself. */ #undef NEED_DECLARATION_ERRNO @@ -79,8 +79,10 @@ void *alloca (); #ifdef HAVE_STRING_H #include <string.h> #else +#ifdef HAVE_STRINGS_H #include <strings.h> #endif +#endif #ifdef HAVE_STDLIB_H #include <stdlib.h> #endif @@ -145,6 +147,9 @@ void *alloca (); #endif /* !__MWERKS__ */ /* Other stuff from config.h. */ +#ifdef NEED_DECLARATION_STRSTR +extern char *strstr (); +#endif #ifdef NEED_DECLARATION_MALLOC extern PTR malloc (); extern PTR realloc (); @@ -212,11 +217,6 @@ extern PTR bfd_alloc_by_size_t PARAMS ((bfd *abfd, size_t sz)); as_fatal("Case value %ld unexpected at line %d of file \"%s\"\n", \ (long) val, __LINE__, __FILE__); \ } - -/* Version 2.1 of Solaris had problems with this declaration, but I - think that bug has since been fixed. If it causes problems on your - system, just delete it. */ -extern char *strstr (); #include "flonum.h" diff --git a/gas/conf.in b/gas/conf.in index 5260c30..29288ba 100644 --- a/gas/conf.in +++ b/gas/conf.in @@ -44,12 +44,18 @@ #undef TARGET_OS #undef TARGET_VENDOR +/* Sometimes the system header files don't declare strstr. */ +#undef NEED_DECLARATION_STRSTR + /* Sometimes the system header files don't declare malloc and realloc. */ #undef NEED_DECLARATION_MALLOC /* Sometimes the system header files don't declare free. */ #undef NEED_DECLARATION_FREE +/* Sometimes the system header files don't declare sbrk. */ +#undef NEED_DECLARATION_SBRK + /* Sometimes errno.h doesn't declare errno itself. */ #undef NEED_DECLARATION_ERRNO diff --git a/gas/configure b/gas/configure index 5cb7b8d..459c9fd 100755 --- a/gas/configure +++ b/gas/configure @@ -2104,6 +2104,10 @@ gas_test_headers=" #endif #ifdef HAVE_STRING_H #include <string.h> +#else +#ifdef HAVE_STRINGS_H +#include <strings.h> +#endif #endif #ifdef HAVE_STDLIB_H #include <stdlib.h> @@ -2113,12 +2117,48 @@ gas_test_headers=" #endif " +echo $ac_n "checking whether declaration is required for strstr""... $ac_c" 1>&6 +if eval "test \"`echo '$''{'gas_cv_decl_needed_strstr'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + cat > conftest.$ac_ext <<EOF +#line 2126 "configure" +#include "confdefs.h" +$gas_test_headers +int main() { return 0; } +int t() { + +typedef char *(*f)(); +f x; +x = (f) strstr; + +; return 0; } +EOF +if { (eval echo configure:2138: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then + rm -rf conftest* + gas_cv_decl_needed_strstr=no +else + rm -rf conftest* + gas_cv_decl_needed_strstr=yes +fi +rm -f conftest* + +fi +echo "$ac_t""$gas_cv_decl_needed_strstr" 1>&6 +test $gas_cv_decl_needed_strstr = no || { + cat >> confdefs.h <<\EOF +#define NEED_DECLARATION_STRSTR 1 +EOF + +} + + echo $ac_n "checking whether declaration is required for malloc""... $ac_c" 1>&6 if eval "test \"`echo '$''{'gas_cv_decl_needed_malloc'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 2122 "configure" +#line 2162 "configure" #include "confdefs.h" $gas_test_headers int main() { return 0; } @@ -2130,7 +2170,7 @@ x = (f) malloc; ; return 0; } EOF -if { (eval echo configure:2134: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then +if { (eval echo configure:2174: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then rm -rf conftest* gas_cv_decl_needed_malloc=no else @@ -2154,7 +2194,7 @@ if eval "test \"`echo '$''{'gas_cv_decl_needed_free'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 2158 "configure" +#line 2198 "configure" #include "confdefs.h" $gas_test_headers int main() { return 0; } @@ -2166,7 +2206,7 @@ x = (f) free; ; return 0; } EOF -if { (eval echo configure:2170: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then +if { (eval echo configure:2210: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then rm -rf conftest* gas_cv_decl_needed_free=no else @@ -2185,6 +2225,42 @@ EOF } +echo $ac_n "checking whether declaration is required for sbrk""... $ac_c" 1>&6 +if eval "test \"`echo '$''{'gas_cv_decl_needed_sbrk'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + cat > conftest.$ac_ext <<EOF +#line 2234 "configure" +#include "confdefs.h" +$gas_test_headers +int main() { return 0; } +int t() { + +typedef char *(*f)(); +f x; +x = (f) sbrk; + +; return 0; } +EOF +if { (eval echo configure:2246: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then + rm -rf conftest* + gas_cv_decl_needed_sbrk=no +else + rm -rf conftest* + gas_cv_decl_needed_sbrk=yes +fi +rm -f conftest* + +fi +echo "$ac_t""$gas_cv_decl_needed_sbrk" 1>&6 +test $gas_cv_decl_needed_sbrk = no || { + cat >> confdefs.h <<\EOF +#define NEED_DECLARATION_SBRK 1 +EOF + +} + + # Does errno.h declare errno, or do we have to add a separate declaration # for it? @@ -2193,7 +2269,7 @@ if eval "test \"`echo '$''{'gas_cv_decl_needed_errno'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 2197 "configure" +#line 2273 "configure" #include "confdefs.h" #ifdef HAVE_ERRNO_H @@ -2209,7 +2285,7 @@ x = (f) errno; ; return 0; } EOF -if { (eval echo configure:2213: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then +if { (eval echo configure:2289: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then rm -rf conftest* gas_cv_decl_needed_errno=no else diff --git a/gas/configure.in b/gas/configure.in index 0b535c6..98977c2 100644 --- a/gas/configure.in +++ b/gas/configure.in @@ -656,6 +656,10 @@ gas_test_headers=" #endif #ifdef HAVE_STRING_H #include <string.h> +#else +#ifdef HAVE_STRINGS_H +#include <strings.h> +#endif #endif #ifdef HAVE_STDLIB_H #include <stdlib.h> @@ -664,8 +668,10 @@ gas_test_headers=" #include <unistd.h> #endif " +GAS_CHECK_DECL_NEEDED(strstr, f, char *(*f)(), $gas_test_headers) GAS_CHECK_DECL_NEEDED(malloc, f, char *(*f)(), $gas_test_headers) GAS_CHECK_DECL_NEEDED(free, f, void (*f)(), $gas_test_headers) +GAS_CHECK_DECL_NEEDED(sbrk, f, char *(*f)(), $gas_test_headers) # Does errno.h declare errno, or do we have to add a separate declaration # for it? |