summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJarkko Hietaniemi <jhi@iki.fi>2006-08-03 12:04:45 +0300
committerRafael Garcia-Suarez <rgarciasuarez@gmail.com>2006-08-03 08:15:51 +0000
commit89a3a25144bc97d46d0d41909341c587a8b6c2cc (patch)
treede12d018fdc82c236482cb89cf2d4130a6826ee4
parentf38c1908cf9793644d5d867fb064b79b773c2c16 (diff)
downloadperl-89a3a25144bc97d46d0d41909341c587a8b6c2cc.tar.gz
more g++ in Tru64
Message-ID: <44D191FD.9030902@iki.fi> p4raw-id: //depot/perl@28654
-rw-r--r--hints/dec_osf.sh6
-rw-r--r--perlio.c5
-rw-r--r--pp_sys.c5
3 files changed, 13 insertions, 3 deletions
diff --git a/hints/dec_osf.sh b/hints/dec_osf.sh
index a5c1aadc44..92cb1c3030 100644
--- a/hints/dec_osf.sh
+++ b/hints/dec_osf.sh
@@ -161,9 +161,9 @@ esac
# Be nauseatingly ANSI
ccflags="$ccflags $_ccflags_strict_ansi"
-# g++ needs -D_XOPEN_SOURCE -D_OSF_SOURCE to get much use of <unistd.h>.
+# g++ needs -D_XOPEN_SOURCE -D_OSF_SOURCE -D_AES_SOURCE -D_BSD to get much use of <unistd.h>.
case "$cc" in
-*g++*) ccflags="$ccflags -D_XOPEN_SOURCE -D_OSF_SOURCE" ;;
+*g++*) ccflags="$ccflags -D_XOPEN_SOURCE -D_OSF_SOURCE -D_AES_SOURCE -D_BSD" ;;
esac
# for gcc the Configure knows about the -fpic:
@@ -375,7 +375,7 @@ $define|true|[yY]*)
extern int foo;
EOF
$cc -c pthread.c 2> pthread.err
- if grep -q "unrecognized compiler" pthread.err; then
+ if egrep -q "unrecognized compiler|syntax error" pthread.err; then
cat >&4 <<EOF
***
*** I'm sorry but your C compiler ($cc) cannot be used to
diff --git a/perlio.c b/perlio.c
index 30e3e6ceac..817026f8d1 100644
--- a/perlio.c
+++ b/perlio.c
@@ -114,6 +114,11 @@ int mkstemp(char*);
else \
SETERRNO(EBADF, SS_IVCHAN)
+#if defined(__osf__) && _XOPEN_SOURCE < 500
+extern int fseeko(FILE *, off_t, int);
+extern off_t ftello(FILE *);
+#endif
+
#ifndef USE_SFIO
int
perlsio_binmode(FILE *fp, int iotype, int mode)
diff --git a/pp_sys.c b/pp_sys.c
index 4465988d83..34ddf8c9a2 100644
--- a/pp_sys.c
+++ b/pp_sys.c
@@ -197,6 +197,11 @@ void setservent(int);
void endservent(void);
#endif
+#if defined(__osf__) && !defined(_XOPEN_SOURCE_EXTENDED)
+extern int readlink(const char *, char *, size_t);
+extern int fchdir(int);
+#endif
+
#undef PERL_EFF_ACCESS /* EFFective uid/gid ACCESS */
/* AIX 5.2 and below use mktime for localtime, and defines the edge case