commit e6c837d612cc884aa4fe68335c121c3dadddeebc from: Russ Cox date: Wed Jul 15 05:55:52 2009 UTC merge commit - 76f90e51459082e3dd93f80e310635c6d37044e2 commit + e6c837d612cc884aa4fe68335c121c3dadddeebc blob - c512ad1c253f4bbe7c1e510e96c2b0d046e2c760 blob + 8a71772bb1c614b19d07479a69302484ef078850 --- .hgignore +++ .hgignore @@ -17,3 +17,4 @@ y.tab.[ch]$ ^log/ ^dict/ ^postscript/font/ +\.orig$ blob - 996e6a2b24eae83d7d36294c7330331d4a7a92c5 blob + 86e9c9706bee263b80d20f5df51676679cee292d --- LICENSE +++ 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. blob - 327f1670642068d88361660f826e73aaa1b2f048 blob + 8ee137ee4bd985ef506ef5e78387bd97a55d2fb4 --- bin/9c +++ 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 blob - ce3047afc04f3b1073d42201f3797875354cf541 blob + ae4157624736f04b49d63f29d040bda0bd263a2f --- dist/buildmk +++ 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; blob - e604d3afc223b466ee9ac82e3d9612b7c04e8dc4 blob + 3a25d01cdf8ce78b6da354bc9a3296b011ab7b6f --- include/u.h +++ 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 blob - 51f3e1c5f5c978eef5cdff130e4fd50c30215236 blob + 31322f8a1c5b6bc978497aec5643891600c2e110 --- src/cmd/acme/rows.c +++ 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) blob - 5485df0c2c5eb0a151e0d4ea182d8c25fef3eb09 blob + 74dd1422af531836028dd8cc609e8a968b49c8a2 --- src/lib9/dirread.c +++ 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 blob - 361cb0aca5c845c50e9a2bd9d3e7feb6af9ec900 blob + f6cc586121822e3775c1d693be626d797d7e6571 --- src/libdraw/drawclient.c +++ 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]); blob - 3d3f325a1b55f8b183d18456e024083da0c7cc16 blob + 8c452f42dddab837f0e4402c712d090fb8b1849f --- src/mkhdr +++ 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;