../configure --target=i370-mvspdp --prefix=/devel/mvscross 
--with-sysroot=/devel/mvshead
 --enable-languages=c

plus make and make install

then I went to

mvscross/bin and renamed i370-mvspdp-gcc to i370-mvspdp-xxx

and replaced it with a script that does:

i370-mvspdp-xxx -S $*

Maybe a more generic way to work around the missing assembler and linker
would be to provide dummy scripts i370-mvspdp-as

I created one of them, but as far as I can tell it didn't pick it up.

and i370-mvspdp-ld, where
the "assembler" would simply copy the assembler source input as text to the
"object" file output, and the "linker" would collect all input files into
a tar file (or some other archive) as "executable" output ...

Sounds good.

This would allow usual build processes (including "make") to proceed as
expected.

Yes.

The compiler error output found in the config.log file should hopefully
point to the problem ...

Well, below are some of the changes I made today to get it to go
past the various errors.  Probably the most interesting was this
one:

! #define BIG_ENDIAN 1
! #define LITTLE_ENDIAN 2
! #define BYTE_ORDER 1

I don't have a sys/param.h and so I just stuck those in somewhere
that it seemed to be looking for, so that it didn't come up and say
that it couldn't determine the endian order.

It seemed to try very hard to stick in sys/types.h and sys/time.h
and I'm not sure how well I got around that.

It also seemed to execute /bin/as at one point instead of my
dummy cross-assembler.  I'll try to figure out what the logic
is tomorrow.

Note - all this is on 3.4.6.

BFN.  Paul.




Index: configure
===================================================================
RCS file: /cvsroot/gccnew/gcc/configure,v
retrieving revision 1.1.1.1
retrieving revision 1.8
diff -c -r1.1.1.1 -r1.8
*** configure 9 Jul 2009 00:25:05 -0000 1.1.1.1
--- configure 20 Oct 2009 12:39:48 -0000 1.8
***************
*** 2463,2470 ****
 /* end confdefs.h.  */
 #include <stdarg.h>
 #include <stdio.h>
! #include <sys/types.h>
! #include <sys/stat.h>
 /* Most of the following tests are stolen from RCS 5.7's src/conf.sh.  */
 struct buf { int x; };
 FILE * (*rcsopen) (struct buf *, struct stat *, int);
--- 2463,2470 ----
 /* end confdefs.h.  */
 #include <stdarg.h>
 #include <stdio.h>
! /*#include <sys/types.h>
! #include <sys/stat.h>*/
 /* Most of the following tests are stolen from RCS 5.7's src/conf.sh.  */
 struct buf { int x; };
 FILE * (*rcsopen) (struct buf *, struct stat *, int);
***************
*** 3377,3383 ****
 cat >>conftest.$ac_ext <<_ACEOF
 /* end confdefs.h.  */
 #include "confdefs.h"
! #include <sys/types.h>


 int
--- 3377,3383 ----
 cat >>conftest.$ac_ext <<_ACEOF
 /* end confdefs.h.  */
 #include "confdefs.h"
! /*#include <sys/types.h>*/


 int
***************
*** 3448,3454 ****
 cat >>conftest.$ac_ext <<_ACEOF
 /* end confdefs.h.  */
 #include "confdefs.h"
! #include <sys/types.h>


 int
--- 3448,3454 ----
 cat >>conftest.$ac_ext <<_ACEOF
 /* end confdefs.h.  */
 #include "confdefs.h"
! /*#include <sys/types.h>*/


 int
***************
*** 3519,3525 ****
 cat >>conftest.$ac_ext <<_ACEOF
 /* end confdefs.h.  */
 #include "confdefs.h"
! #include <sys/types.h>


 int
--- 3519,3525 ----
 cat >>conftest.$ac_ext <<_ACEOF
 /* end confdefs.h.  */
 #include "confdefs.h"
! /*#include <sys/types.h>*/


 int
***************
*** 3590,3596 ****
 cat >>conftest.$ac_ext <<_ACEOF
 /* end confdefs.h.  */
 #include "confdefs.h"
! #include <sys/types.h>


 int
--- 3590,3596 ----
 cat >>conftest.$ac_ext <<_ACEOF
 /* end confdefs.h.  */
 #include "confdefs.h"
! /*#include <sys/types.h>*/


 int
***************
*** 3662,3668 ****
 cat >>conftest.$ac_ext <<_ACEOF
 /* end confdefs.h.  */
 #include "confdefs.h"
! #include <sys/types.h>


 int
--- 3662,3668 ----
 cat >>conftest.$ac_ext <<_ACEOF
 /* end confdefs.h.  */
 #include "confdefs.h"
! /*#include <sys/types.h>*/


 int
***************
*** 3735,3741 ****
 cat >>conftest.$ac_ext <<_ACEOF
 /* end confdefs.h.  */
 #include "confdefs.h"
! #include <sys/types.h>


 int
--- 3735,3741 ----
 cat >>conftest.$ac_ext <<_ACEOF
 /* end confdefs.h.  */
 #include "confdefs.h"
! /*#include <sys/types.h>*/


 int
***************
*** 5656,5662 ****
 if test $ac_cv_header_time = yes; then

 cat >>confdefs.h <<\_ACEOF
! #define TIME_WITH_SYS_TIME 1
 _ACEOF

 fi
--- 5656,5662 ----
 if test $ac_cv_header_time = yes; then

 cat >>confdefs.h <<\_ACEOF
! /*#define TIME_WITH_SYS_TIME 1*/
 _ACEOF

 fi
***************
*** 6150,6157 ****
 cat confdefs.h >>conftest.$ac_ext
 cat >>conftest.$ac_ext <<_ACEOF
 /* end confdefs.h.  */
! #include <sys/types.h>
! #include <sys/param.h>
 int
 main ()
 {
--- 6150,6160 ----
 cat confdefs.h >>conftest.$ac_ext
 cat >>conftest.$ac_ext <<_ACEOF
 /* end confdefs.h.  */
! /*#include <sys/types.h>
! #include <sys/param.h>*/
! #define BIG_ENDIAN 1
! #define LITTLE_ENDIAN 2
! #define BYTE_ORDER 1
 int
 main ()
 {
***************
*** 6192,6199 ****
 cat confdefs.h >>conftest.$ac_ext
 cat >>conftest.$ac_ext <<_ACEOF
 /* end confdefs.h.  */
! #include <sys/types.h>
! #include <sys/param.h>
 int
 main ()
 {
--- 6195,6205 ----
 cat confdefs.h >>conftest.$ac_ext
 cat >>conftest.$ac_ext <<_ACEOF
 /* end confdefs.h.  */
! /*#include <sys/types.h>
! #include <sys/param.h>*/
! #define BIG_ENDIAN 1
! #define LITTLE_ENDIAN 2
! #define BYTE_ORDER 1
 int
 main ()
 {
***************
*** 6731,6738 ****
 cat confdefs.h >>conftest.$ac_ext
 cat >>conftest.$ac_ext <<_ACEOF
 /* end confdefs.h.  */
! #include <sys/types.h>
! #include <inttypes.h>
 int
 main ()
 {
--- 6737,6744 ----
 cat confdefs.h >>conftest.$ac_ext
 cat >>conftest.$ac_ext <<_ACEOF
 /* end confdefs.h.  */
! /*#include <sys/types.h>
! #include <inttypes.h>*/
 int
 main ()
 {
***************
*** 7051,7057 ****
 cat confdefs.h >>conftest.$ac_ext
 cat >>conftest.$ac_ext <<_ACEOF
 /* end confdefs.h.  */
! #include <sys/types.h>

 _ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
--- 7057,7063 ----
 cat confdefs.h >>conftest.$ac_ext
 cat >>conftest.$ac_ext <<_ACEOF
 /* end confdefs.h.  */
! /*#include <sys/types.h>*/

 _ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
***************
*** 7093,7099 ****
 cat >>conftest.$ac_ext <<_ACEOF
 /* end confdefs.h.  */
 /* Thanks to Mike Rendell for this test.  */
! #include <sys/types.h>
 #define NGID 256
 #undef MAX
 #define MAX(x, y) ((x) > (y) ? (x) : (y))
--- 7099,7105 ----
 cat >>conftest.$ac_ext <<_ACEOF
 /* end confdefs.h.  */
 /* Thanks to Mike Rendell for this test.  */
! /*#include <sys/types.h>*/
 #define NGID 256
 #undef MAX
 #define MAX(x, y) ((x) > (y) ? (x) : (y))
***************
*** 7303,7311 ****
 cat confdefs.h >>conftest.$ac_ext
 cat >>conftest.$ac_ext <<_ACEOF
 /* end confdefs.h.  */
! #include <sys/types.h>
 #include <sys/mman.h>
! #include <unistd.h>

 #ifndef MAP_ANONYMOUS
 #define MAP_ANONYMOUS MAP_ANON
--- 7309,7317 ----
 cat confdefs.h >>conftest.$ac_ext
 cat >>conftest.$ac_ext <<_ACEOF
 /* end confdefs.h.  */
! /*#include <sys/types.h>
 #include <sys/mman.h>
! #include <unistd.h>*/

 #ifndef MAP_ANONYMOUS
 #define MAP_ANONYMOUS MAP_ANON
***************
*** 7644,7650 ****
 else
   cat >conftest.$ac_ext <<_ACEOF
 /* By Ruediger Kuhlmann. */
!       #include <sys/types.h>
       #if HAVE_UNISTD_H
       # include <unistd.h>
       #endif
--- 7650,7656 ----
 else
   cat >conftest.$ac_ext <<_ACEOF
 /* By Ruediger Kuhlmann. */
!       /*#include <sys/types.h>*/
       #if HAVE_UNISTD_H
       # include <unistd.h>
       #endif
***************
*** 7717,7725 ****
 /* Thanks to Paul Eggert for this test.  */
 #include <stdio.h>
 #include <stdlib.h>
! #include <sys/types.h>
 #include <sys/stat.h>
! #include <sys/wait.h>
 #if HAVE_UNISTD_H
 # include <unistd.h>
 #endif
--- 7723,7731 ----
 /* Thanks to Paul Eggert for this test.  */
 #include <stdio.h>
 #include <stdlib.h>
! /*#include <sys/types.h>
 #include <sys/stat.h>
! #include <sys/wait.h>*/
 #if HAVE_UNISTD_H
 # include <unistd.h>
 #endif
***************
*** 8998,9004 ****
 cat >>conftest.$ac_ext <<_ACEOF
 /* end confdefs.h.  */

! #include <sys/types.h>
 #ifdef HAVE_SYS_STAT_H
 # include <sys/stat.h>
 #endif
--- 9004,9010 ----
 cat >>conftest.$ac_ext <<_ACEOF
 /* end confdefs.h.  */

! /*#include <sys/types.h>*/
 #ifdef HAVE_SYS_STAT_H
 # include <sys/stat.h>
 #endif

Reply via email to