Hi there I just tried to port make-3.82 to HP-Nonstop. I got it to work (almost) with the following minor changes:
diff -u ./arscan.c.orig ./arscan.c --- ./arscan.c.orig 2010-07-12 20:20:32.000000000 -0500 +++ ./arscan.c 2010-09-08 02:32:44.000000000 -0500 @@ -253,7 +253,7 @@ #endif #ifndef WINDOWS32 -# ifndef __BEOS__ +# if !defined(__BEOS__) && !defined(__TANDEM) # include <ar.h> # else /* BeOS 5 doesn't have <ar.h> but has archives in the same format diff -u ./config/config.sub.orig ./config/config.sub --- ./config/config.sub.orig 2010-07-28 00:42:11.000000000 -0500 +++ ./config/config.sub 2010-09-08 02:14:41.000000000 -0500 @@ -860,6 +860,9 @@ np1) basic_machine=np1-gould ;; + nse-tandem) + basic_machine=nse-tandem + ;; nsr-tandem) basic_machine=nsr-tandem ;; diff -u ./make.h.orig ./make.h --- ./make.h.orig 2010-07-20 08:12:06.000000000 -0500 +++ ./make.h 2010-09-09 06:17:32.000000000 -0500 @@ -28,6 +28,13 @@ #define _GNU_SOURCE 1 +#ifdef __TANDEM +#include <floss.h> +/* we have it but it somehow behaves differently from what 'make check' expects +*/ +#undef HAVE_REALPATH +#endif + /* AIX requires this to be the first thing in the file. */ #if HAVE_ALLOCA_H # include <alloca.h> @@ -37,7 +44,11 @@ # else # if !defined(__GNUC__) && !defined(WINDOWS32) # ifndef alloca /* predefined by HP cc +Olibcalls */ +#ifdef __STDC__ +void *alloca (); +#else char *alloca (); +#endif # endif # endif # endif Remaining issue is that 'make check' fails in the parallelism: $ make check ... check. features/parallelism .................................... Error running /usr/local/Floss/make-3.82/tests/../make (expected 0; got 14): /usr/local/Floss/make-3.82/tests/../make -f work/features/parallelism.mk.2 -j4 Caught signal 14! FAILED (6/8 passed) ... Running the tests manually shows: $ cd tests $ sh work/features/parallelism.run.2 THREE.inc ONE.inc TWO.inc ONE TWO THREE Success $ Looks like this is not the expected order? No idea why that is though. It may have to do with the architecture of an HP-NonStop machine, which is more like a cluster than a single (SMP) machine. Any hints to get it to work are more than welcome. Also I haven't yet fully understood why realpath failed the 'make check' step, when HAVE_REALPATH was in effect, maybe our realpath() API behaves slightly different then the one from other vendors. Disabling if as per the first chunk of the last patch is good enough for me though. I'd like at least the first two patches and the last chunk of the last patch to get accepted into the make source. The second patch might need to go to the autoconf folks too ('configure' is version 2.65), hence the CC. Bye, Jojo Joachim Schmitz NonStop and Neoview Support Expert Global Customer Support Center (GCSC) Europe, Middle East, Africa Hewlett-Packard GmbH +49 69 95307-561 / Phone +49 2102 90-8510 / Fax schm...@hp.com / Email Berliner Str. 111 40591 Ratingen Germany [cid:image001.gif@01CB5028.3E51E720]<http://www.hp.com/> Please consider the environment before printing this email.
<<inline: image001.gif>>
_______________________________________________ Bug-make mailing list Bug-make@gnu.org http://lists.gnu.org/mailman/listinfo/bug-make