about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog7
-rw-r--r--Etc/MACHINES8
-rw-r--r--zshconfig.ac9
3 files changed, 21 insertions, 3 deletions
diff --git a/ChangeLog b/ChangeLog
index 8c7e158d2..d806aa01b 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -480,6 +480,13 @@
 
 	* 15183: zshconfig.ac: fix DLLD in non-ELF case
 
+	* 15181: zshconfig.ac: use -KPIC instead of -Kpic at request
+	of Tomi Vainio <Tomi.Vainio@Sun.COM>
+
+	* 15180: zshconfig.ac, Etc/MACHINES: make AIX default to termcap
+	as workaround for apparent AIX curses bug; add flags to create
+	modules with shared object type. Mention curses problem.
+
 2001-06-29  Clint Adams  <clint@zsh.org>
 
         * Bart: 15083 plus comments: Functions/Zle/bash-backward-kill-word:
diff --git a/Etc/MACHINES b/Etc/MACHINES
index 95a0edc52..3b62f27e3 100644
--- a/Etc/MACHINES
+++ b/Etc/MACHINES
@@ -79,7 +79,7 @@ HP: HP-UX 9, 10.20, 11.0
 	Compiling with gcc 2.7.1 is known to fail with header file
 	conflicts on HP-UX 11.  Use the HP ANSI C compiler.
 
-IBM: AIX 3.2, 4.1
+IBM: AIX 3.2, 4.x
 	Should build `out-of-the-box', but --enable-zsh-mem will not work.
 
 	On 3.2, for 64-bit integer support you need to compile with gcc, as
@@ -89,6 +89,12 @@ IBM: AIX 3.2, 4.1
 	4.1, though native cc works. More information about this problem
 	would be appreciated.
 
+	It was reported, that at least some 4.x versions have problem
+	with curses - variables boolcodes and some other are declared
+	in term.h but missing is libcurses.a. That makes native compiler
+	very unhappy (GCC 3.0 apparently does not mind). Zsh now defaults
+	to termcap on AIX; any info about this problem is appreciated.
+
 Linux: Linux 2.* (various 32-bit and 64-bit processors)
 	Should build `out-of-the-box'.
 
diff --git a/zshconfig.ac b/zshconfig.ac
index 35c24a0e6..4dc5c823f 100644
--- a/zshconfig.ac
+++ b/zshconfig.ac
@@ -554,7 +554,7 @@ else
   termcap_curses_order="termcap curses ncurses"
 fi],
 [case "$host_os" in
-  aix*|hpux10.*|hpux11.*|solaris*)
+  hpux10.*|hpux11.*|solaris*)
       termcap_curses_order="curses ncurses termcap" ;;
   *)             termcap_curses_order="termcap curses ncurses" ;;
 esac])dnl
@@ -1535,6 +1535,11 @@ if test "x$aixdynamic" = xyes; then
   DL_EXT="${DL_EXT=so}"
   DLLD="${DLLD=$CC}"
   zsh_cv_func_dlsym_needs_underscore=no
+  if test -n "$GCC"; then
+    DLLDFLAGS=${DLLDFLAGS=-shared}
+  else
+    DLLDFLAGS=${DLLDFLAGS=-bM:SRE}
+  fi
   DLLDFLAGS=${DLLDFLAGS=}
   EXTRA_LDFLAGS=${EXTRA_LDFLAGS=}
   EXPOPT=${LDARG}-bE:
@@ -1632,7 +1637,7 @@ char *argv[];
     case "$host_os" in
       hpux*)                 DLCFLAGS="${DLCFLAGS=+z}" ;;
       sunos*)                DLCFLAGS="${DLCFLAGS=-pic}" ;;
-      solaris*|sysv4*|esix*) DLCFLAGS="${DLCFLAGS=-Kpic}" ;;
+      solaris*|sysv4*|esix*) DLCFLAGS="${DLCFLAGS=-KPIC}" ;;
     esac
   fi
   case "$host_os" in