aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.hgignore1
-rw-r--r--LICENSE6
-rwxr-xr-xbin/9c3
-rwxr-xr-xdist/buildmk4
-rw-r--r--include/u.h3
-rw-r--r--src/cmd/acme/rows.c3
-rw-r--r--src/lib9/dirread.c6
-rw-r--r--src/libdraw/drawclient.c8
-rw-r--r--src/mkhdr2
9 files changed, 31 insertions, 5 deletions
diff --git a/.hgignore b/.hgignore
index c512ad1c..8a71772b 100644
--- a/.hgignore
+++ b/.hgignore
@@ -17,3 +17,4 @@ y.tab.[ch]$
^log/
^dict/
^postscript/font/
+\.orig$
diff --git a/LICENSE b/LICENSE
index 996e6a2b..86e9c970 100644
--- a/LICENSE
+++ b/LICENSE
@@ -1,3 +1,9 @@
+Copyright © 2000-2009 Lucent Technologies. All Rights Reserved.
+Portions Copyright © 2001-2008 Russ Cox
+Portions Copyright © 2008-2009 Google Inc.
+
+===================================================================
+
The bulk of this software is derived from Plan 9 and is thus distributed
under the Lucent Public License, Version 1.02, reproduced below.
diff --git a/bin/9c b/bin/9c
index 327f1670..8ee137ee 100755
--- a/bin/9c
+++ b/bin/9c
@@ -58,6 +58,9 @@ case "$tag" in
cflags="$ngflags -g"
cflags="$cflags -D__sun__ -D__${s}__"
;;
+*AIX*) usegcc
+ cflags="$ngflags -g -D__AIX__"
+ ;;
*)
echo 9c does not know how to compile on "$tag" 1>&2
exit 1
diff --git a/dist/buildmk b/dist/buildmk
index ce3047af..ae415762 100755
--- a/dist/buildmk
+++ b/dist/buildmk
@@ -2,13 +2,13 @@
# run this in the src directory
SYSNAME=`uname` export SYSNAME
-OBJTYPE=`uname -m | sed '
+OBJTYPE=`uname -p | sed '
s;i.86;386;;
s;i86pc;386;;
s;amd64;x86_64;;
s;/.*;;; s; ;;g;
s;armv4l;arm;g;
- s;PowerMacintosh;power;g;
+ s;powerpc;power;g;
s;macppc;power;g;
s;ppc64;power;g;
s;ppc;power;g;
diff --git a/include/u.h b/include/u.h
index e604d3af..3a25d01c 100644
--- a/include/u.h
+++ b/include/u.h
@@ -29,6 +29,9 @@ extern "C" {
# undef __LONG_LONG_SUPPORTED
# define __LONG_LONG_SUPPORTED
#endif
+#if defined(__AIX__)
+# define _XOPEN_SOURCE 1
+#endif
#define _LARGEFILE64_SOURCE 1
#define _FILE_OFFSET_BITS 64
diff --git a/src/cmd/acme/rows.c b/src/cmd/acme/rows.c
index 51f3e1c5..31322f8a 100644
--- a/src/cmd/acme/rows.c
+++ b/src/cmd/acme/rows.c
@@ -269,6 +269,9 @@ rowtype(Row *row, Rune r, Point p)
Window *w;
Text *t;
+ if(r == 0)
+ r = Runeerror;
+
clearmouse();
qlock(&row->lk);
if(bartflag)
diff --git a/src/lib9/dirread.c b/src/lib9/dirread.c
index 5485df0c..74dd1422 100644
--- a/src/lib9/dirread.c
+++ b/src/lib9/dirread.c
@@ -31,6 +31,12 @@ mygetdents(int fd, struct dirent *buf, int n)
{
return getdents(fd, (void*)buf, n);
}
+#elif defined(__AIX__)
+static int
+mygetdents(int fd, struct dirent *buf, int n)
+{
+ return getdirent(fd, (void*)buf, n);
+}
#endif
static int
diff --git a/src/libdraw/drawclient.c b/src/libdraw/drawclient.c
index 361cb0ac..f6cc5861 100644
--- a/src/libdraw/drawclient.c
+++ b/src/libdraw/drawclient.c
@@ -34,6 +34,7 @@ _displayconnect(Display *d)
return -1;
}
if(pid == 0){
+ char *devdraw;
close(p[0]);
dup(p[1], 0);
dup(p[1], 1);
@@ -54,9 +55,12 @@ _displayconnect(Display *d)
* instead.
*/
putenv("NOLIBTHREADDAEMONIZE", "1");
+ devdraw = getenv("DEVDRAW");
+ if(devdraw == nil)
+ devdraw = "devdraw";
if(argv0 == nil)
- argv0 = "devdraw";
- execl("devdraw", argv0, argv0, "(devdraw)", nil);
+ argv0 = devdraw;
+ execl(devdraw, argv0, argv0, "(devdraw)", nil);
sysfatal("exec devdraw: %r");
}
close(p[1]);
diff --git a/src/mkhdr b/src/mkhdr
index 3d3f325a..8c452f42 100644
--- a/src/mkhdr
+++ b/src/mkhdr
@@ -6,7 +6,7 @@ OBJTYPE=`uname -m | sed '
s;amd64;x86_64;;
s;/.*;;;
s; ;;g;
- s;armv4l;arm;g;
+ s;armv.*;arm;g;
s;PowerMacintosh;power;g;
s;macppc;power;g;
s;ppc64;power;g;