This is the mail archive of the fortran@gcc.gnu.org mailing list for the GNU Fortran project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[PATCH] Broaden download options in contrib/download_prerequisites


 
All,

The attached patch for the contrib/download_prerequisites script is my first ever submission so please be gentle. :) Please let me know if this is the right list to review it or if I need to submit it to another list. I signed the necessary paperwork for contributing to GCC a couple of years ago.

This patch broadens the download_prerequisite script’s available download methods from wget-only to any of the the following listed from first preference to last preference: curl, wget, or ftp. The ordering corresponds roughly to going from newer and most flexible to older and least flexible. This patch should make the script more robust and more portable. In particular, all recent MacOS systems have curl and older MacOS systems should have it if the XCode command-line tools have been installed. Likewise, even a lightweight Linux distribution (e.g., Lubuntu) comes with wget pre-installed, but ftp should cover most environments that are missing curl or wget.  

If this patch gets approved, then my next patch(es) will incorporate the download of OpenCoarrays into download_prerequisites. Then I will work on incorporating the build of OpenCoarrays. I will likely only have time to implement an invocation of the OpenCoarrays installation script, but I can provide a small budget for anyone who is willing and able to modify GCC’s autotools scripts directly, assuming that is the preferred approach. 

I built the GCC trunk this morning, but my attempt to run the regression tests failed.  The output from “make check-fortran" is below.  Any advice is welcome.  I understand that DejaGNU must be installed and I’m not certain whether it is so I’ll try installing that first to see if that fixes the problem below.

Damian  

$ make check-fortran

r=`${PWDCMD-pwd}`; export r; \
s=`cd .; ${PWDCMD-pwd}`; export s; \
FLEX="flex"; export FLEX; LEX="flex"; export LEX; BISON="/home/rouson/Desktop/Builds/gcc/missing bison"; export BISON; YACC="/home/rouson/Desktop/Builds/gcc/missing bison -y"; export YACC; M4="m4"; export M4; SED="/bin/sed"; export SED; AWK="mawk"; export AWK; MAKEINFO="makeinfo"; export MAKEINFO; CC="gcc"; export CC; ADA_CFLAGS=""; export ADA_CFLAGS; CFLAGS="-g -O2"; export CFLAGS; CONFIG_SHELL="/bin/bash"; export CONFIG_SHELL; CXX="g++ -std=gnu++98"; export CXX; CXXFLAGS="-g -O2"; export CXXFLAGS; GCJ=""; export GCJ; GFORTRAN=""; export GFORTRAN; GOC=""; export GOC; AR="ar"; export AR; AS="as"; export AS; CC_FOR_BUILD="gcc"; export CC_FOR_BUILD; DLLTOOL="dlltool"; export DLLTOOL; LD="ld"; export LD; LDFLAGS="-static-libstdc++ -static-libgcc "; export LDFLAGS; NM="nm"; export NM; RANLIB="ranlib"; export RANLIB; WINDRES="windres"; export WINDRES; WINDMC="windmc"; export WINDMC; OBJCOPY=""; export OBJCOPY; OBJDUMP="objdump"; export OBJDUMP; READELF="readelf"; export READELF; AR_FOR_TARGET="ar"; export AR_FOR_TARGET; AS_FOR_TARGET="as"; export AS_FOR_TARGET; GCC_FOR_TARGET=" $r/host-x86_64-pc-linux-gnu/gcc/xgcc -B$r/host-x86_64-pc-linux-gnu/gcc/"; export GCC_FOR_TARGET; LD_FOR_TARGET="ld"; export LD_FOR_TARGET; NM_FOR_TARGET="nm"; export NM_FOR_TARGET; OBJDUMP_FOR_TARGET="objdump"; export OBJDUMP_FOR_TARGET; OBJCOPY_FOR_TARGET=""; export OBJCOPY_FOR_TARGET; RANLIB_FOR_TARGET="ranlib"; export RANLIB_FOR_TARGET; READELF_FOR_TARGET="readelf"; export READELF_FOR_TARGET; TOPLEVEL_CONFIGURE_ARGUMENTS="./configure --prefix=/opt/gnu/7.0.0/2016-09-28 --enable-languages=c,c++,fortran,lto --disable-multilib --disable-werror"; export TOPLEVEL_CONFIGURE_ARGUMENTS; HOST_LIBS=""; export HOST_LIBS; GMPLIBS="-L$r/host-x86_64-pc-linux-gnu/gmp/.libs -L$r/host-x86_64-pc-linux-gnu/mpfr/src/.libs -L$r/host-x86_64-pc-linux-gnu/mpc/src/.libs -lmpc -lmpfr -lgmp"; export GMPLIBS; GMPINC="-I$r/host-x86_64-pc-linux-gnu/gmp -I$s/gmp -I$r/host-x86_64-pc-linux-gnu/mpfr/src -I$s/mpfr/src -I$s/mpc/src "; export GMPINC; ISLLIBS="-L$r/host-x86_64-pc-linux-gnu/isl/.libs  -lisl"; export ISLLIBS; ISLINC="-I$r/host-x86_64-pc-linux-gnu/isl/include -I$s/isl/include"; export ISLINC; ISLVER=""; export ISLVER; LIBELFLIBS="@libelflibs@"; export LIBELFLIBS; LIBELFINC="@libelfinc@"; export LIBELFINC; XGCC_FLAGS_FOR_TARGET="-B/opt/gnu/7.0.0/2016-09-28/x86_64-pc-linux-gnu/bin/ -B/opt/gnu/7.0.0/2016-09-28/x86_64-pc-linux-gnu/lib/ -isystem /opt/gnu/7.0.0/2016-09-28/x86_64-pc-linux-gnu/include -isystem /opt/gnu/7.0.0/2016-09-28/x86_64-pc-linux-gnu/sys-include  "; export XGCC_FLAGS_FOR_TARGET; LD_LIBRARY_PATH=`echo "$r/x86_64-pc-linux-gnu/libstdc++-v3/src/.libs:$r/x86_64-pc-linux-gnu/libsanitizer/.libs:$r/x86_64-pc-linux-gnu/libmpx/.libs:$r/x86_64-pc-linux-gnu/libvtv/.libs:$r/x86_64-pc-linux-gnu/libcilkrts/.libs:$r/x86_64-pc-linux-gnu/libssp/.libs:$r/x86_64-pc-linux-gnu/libgomp/.libs:$r/x86_64-pc-linux-gnu/libitm/.libs:$r/x86_64-pc-linux-gnu/libatomic/.libs:$r/host-x86_64-pc-linux-gnu/gcc:$r/host-x86_64-pc-linux-gnu/prev-gcc:$LD_LIBRARY_PATH" | sed 's,::*,:,g;s,^:*,,;s,:*$,,'`; export LD_LIBRARY_PATH; LD_LIBRARY_PATH=`echo "$r/host-x86_64-pc-linux-gnu/gmp/.libs:$r/host-x86_64-pc-linux-gnu/prev-gmp/.libs:$r/host-x86_64-pc-linux-gnu/mpfr/src/.libs:$r/host-x86_64-pc-linux-gnu/prev-mpfr/src/.libs:$r/host-x86_64-pc-linux-gnu/mpc/src/.libs:$r/host-x86_64-pc-linux-gnu/prev-mpc/src/.libs:$r/host-x86_64-pc-linux-gnu/isl/.libs:$r/host-x86_64-pc-linux-gnu/prev-isl/.libs:$LD_LIBRARY_PATH" | sed 's,::*,:,g;s,^:*,,;s,:*$,,'`; export LD_LIBRARY_PATH; \
(cd gcc && make "DESTDIR=" "RPATH_ENVVAR=LD_LIBRARY_PATH" "TARGET_SUBDIR=x86_64-pc-linux-gnu" "bindir=/opt/gnu/7.0.0/2016-09-28/bin" "datadir=/opt/gnu/7.0.0/2016-09-28/share" "exec_prefix=/opt/gnu/7.0.0/2016-09-28" "includedir=/opt/gnu/7.0.0/2016-09-28/include" "datarootdir=/opt/gnu/7.0.0/2016-09-28/share" "docdir=/opt/gnu/7.0.0/2016-09-28/share/doc/" "infodir=/opt/gnu/7.0.0/2016-09-28/share/info" "pdfdir=/opt/gnu/7.0.0/2016-09-28/share/doc/" "htmldir=/opt/gnu/7.0.0/2016-09-28/share/doc/" "libdir=/opt/gnu/7.0.0/2016-09-28/lib" "libexecdir=/opt/gnu/7.0.0/2016-09-28/libexec" "lispdir=" "localstatedir=/opt/gnu/7.0.0/2016-09-28/var" "mandir=/opt/gnu/7.0.0/2016-09-28/share/man" "oldincludedir=/usr/include" "prefix=/opt/gnu/7.0.0/2016-09-28" "sbindir=/opt/gnu/7.0.0/2016-09-28/sbin" "sharedstatedir=/opt/gnu/7.0.0/2016-09-28/com" "sysconfdir=/opt/gnu/7.0.0/2016-09-28/etc" "tooldir=/opt/gnu/7.0.0/2016-09-28/x86_64-pc-linux-gnu" "build_tooldir=/opt/gnu/7.0.0/2016-09-28/x86_64-pc-linux-gnu" "target_alias=x86_64-pc-linux-gnu" "AWK=mawk" "BISON=/home/rouson/Desktop/Builds/gcc/missing bison" "CC_FOR_BUILD=gcc" "CFLAGS_FOR_BUILD=-g -O2" "CXX_FOR_BUILD=g++ -std=gnu++98" "EXPECT=expect" "FLEX=flex" "INSTALL=/usr/bin/install -c" "INSTALL_DATA=/usr/bin/install -c -m 644" "INSTALL_PROGRAM=/usr/bin/install -c" "INSTALL_SCRIPT=/usr/bin/install -c" "LDFLAGS_FOR_BUILD=" "LEX=flex" "M4=m4" "MAKE=make" "RUNTEST=runtest" "RUNTESTFLAGS=" "SED=/bin/sed" "SHELL=/bin/bash" "YACC=/home/rouson/Desktop/Builds/gcc/missing bison -y" "`echo 'ADAFLAGS=' | sed -e s'/[^=][^=]*=$/XFOO=/'`" "ADA_CFLAGS=" "AR_FLAGS=rc" "`echo 'BOOT_ADAFLAGS=-gnatpg' | sed -e s'/[^=][^=]*=$/XFOO=/'`" "BOOT_CFLAGS=-g -O2" "BOOT_LDFLAGS=" "CFLAGS=-g -O2" "CXXFLAGS=-g -O2" "LDFLAGS=" "LIBCFLAGS=-g -O2" "LIBCXXFLAGS=-g -O2 -fno-implicit-templates" "STAGE1_CHECKING=--enable-checking=yes,types,extra" "STAGE1_LANGUAGES=c,c++,lto" "GNATBIND=no" "GNATMAKE=no" "AR_FOR_TARGET=ar" "AS_FOR_TARGET=as" "CC_FOR_TARGET= $r/host-x86_64-pc-linux-gnu/gcc/xgcc -B$r/host-x86_64-pc-linux-gnu/gcc/" "CFLAGS_FOR_TARGET=-g -O2" "CPPFLAGS_FOR_TARGET=" "CXXFLAGS_FOR_TARGET=-g -O2 -D_GNU_SOURCE" "DLLTOOL_FOR_TARGET=dlltool" "FLAGS_FOR_TARGET=-B/opt/gnu/7.0.0/2016-09-28/x86_64-pc-linux-gnu/bin/ -B/opt/gnu/7.0.0/2016-09-28/x86_64-pc-linux-gnu/lib/ -isystem /opt/gnu/7.0.0/2016-09-28/x86_64-pc-linux-gnu/include -isystem /opt/gnu/7.0.0/2016-09-28/x86_64-pc-linux-gnu/sys-include" "GCJ_FOR_TARGET= " "GFORTRAN_FOR_TARGET= $r/host-x86_64-pc-linux-gnu/gcc/gfortran -B$r/host-x86_64-pc-linux-gnu/gcc/" "GOC_FOR_TARGET= " "GOCFLAGS_FOR_TARGET=-O2 -g" "LD_FOR_TARGET=ld" "LIPO_FOR_TARGET=lipo" "LDFLAGS_FOR_TARGET=" "LIBCFLAGS_FOR_TARGET=-g -O2" "LIBCXXFLAGS_FOR_TARGET=-g -O2 -D_GNU_SOURCE -fno-implicit-templates" "NM_FOR_TARGET=nm" "OBJDUMP_FOR_TARGET=objdump" "OBJCOPY_FOR_TARGET=" "RANLIB_FOR_TARGET=ranlib" "READELF_FOR_TARGET=readelf" "STRIP_FOR_TARGET=strip" "WINDRES_FOR_TARGET=windres" "WINDMC_FOR_TARGET=windmc" "BUILD_CONFIG=bootstrap-debug" "`echo 'LANGUAGES=' | sed -e s'/[^=][^=]*=$/XFOO=/'`" "LEAN=false" "STAGE1_CFLAGS=-g" "STAGE1_CXXFLAGS=-g" "STAGE1_TFLAGS=" "STAGE2_CFLAGS=-g -O2 -gtoggle" "STAGE2_CXXFLAGS=-g -O2 -gtoggle" "STAGE2_TFLAGS=" "STAGE3_CFLAGS=-g -O2" "STAGE3_CXXFLAGS=-g -O2" "STAGE3_TFLAGS=" "STAGE4_CFLAGS=-g -O2" "STAGE4_CXXFLAGS=-g -O2" "STAGE4_TFLAGS=" "STAGEprofile_CFLAGS=-g -O2 -gtoggle -fprofile-generate" "STAGEprofile_CXXFLAGS=-g -O2 -gtoggle -fprofile-generate" "STAGEprofile_TFLAGS=" "STAGEfeedback_CFLAGS=-g -O2 -fprofile-use" "STAGEfeedback_CXXFLAGS=-g -O2 -fprofile-use" "STAGEfeedback_TFLAGS=" "STAGEautoprofile_CFLAGS=-g -O2 -gtoggle -g" "STAGEautoprofile_CXXFLAGS=-g -O2 -gtoggle -g" "STAGEautoprofile_TFLAGS=" "STAGEautofeedback_CFLAGS=-g -O2" "STAGEautofeedback_CXXFLAGS=-g -O2" "STAGEautofeedback_TFLAGS="  "TFLAGS=" "CONFIG_SHELL=/bin/bash" "MAKEINFO=makeinfo --split-size=5000000"  'AR=ar' 'AS=as' 'CC=gcc' 'CXX=g++ -std=gnu++98' 'DLLTOOL=dlltool' 'GCJ=' 'GFORTRAN=' 'GOC=' 'LD=ld' 'LIPO=lipo' 'NM=nm' 'OBJDUMP=objdump' 'RANLIB=ranlib' 'READELF=readelf' 'STRIP=strip' 'WINDRES=windres' 'WINDMC=windmc' 'CREATE_GCOV=create_gcov' "GCC_FOR_TARGET= $r/host-x86_64-pc-linux-gnu/gcc/xgcc -B$r/host-x86_64-pc-linux-gnu/gcc/" "`echo 'STMP_FIXPROTO=' | sed -e s'/[^=][^=]*=$/XFOO=/'`" "`echo 'LIMITS_H_TEST=' | sed -e s'/[^=][^=]*=$/XFOO=/'`" check-fortran);
make[1]: Entering directory '/home/rouson/Desktop/Builds/gcc/gcc'
make[1]: *** No rule to make target 'check-fortran'.  Stop.
make[1]: Leaving directory '/home/rouson/Desktop/Builds/gcc/gcc'
Makefile:27214: recipe for target 'check-gcc-fortran' failed
make: *** [check-gcc-fortran] Error 2




Attachment: download_prerequisites.diff
Description: Binary data


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]