|
|
1.1 ! root 1: ############################################################################## ! 2: ! 3: ## This file is a shell script fragment that supplies the information ! 4: ## necessary to tailor a template configure script into the configure ! 5: ## script appropriate for this directory. For more information, check ! 6: ## any existing configure script. ! 7: ! 8: ## Be warned, there are two types of configure.in files. There are those ! 9: ## used by Autoconf, which are macros which are expanded into a configure ! 10: ## script by autoconf. The other sort, of which this is one, is executed ! 11: ## by Cygnus configure. ! 12: ! 13: ## For more information on these two systems, check out the documentation ! 14: ## for 'Autoconf' (autoconf.texi) and 'Configure' (configure.texi). ! 15: ! 16: ############################################################################## ! 17: ! 18: ### To add a new directory to the tree, first choose whether it is a target ! 19: ### or a host dependent tool. Then put it into the appropriate list ! 20: ### (library or tools, host or target), doing a dependency sort. For ! 21: ### example, gdb requires that byacc (or bison) be built first, so it is in ! 22: ### the ${host_tools} list after byacc and bison. ! 23: ! 24: ! 25: # these libraries are used by various programs built for the host environment ! 26: # ! 27: host_libs="mmalloc libiberty opcodes bfd readline gash tcl tk tclX" ! 28: ! 29: # these tools are built for the host environment ! 30: # ! 31: host_tools="byacc flex bison binutils ld gas gcc gdb make patch ! 32: prms send-pr gprof gdbtest tgas etc expect dejagnu sim ! 33: m4 autoconf ispell grep diff rcs cvs fileutils shellutils ! 34: textutils wdiff find emacs uudecode hello tar gzip indent ! 35: recode release sed utils" ! 36: ! 37: ! 38: # these libraries are built for the target environment, and are built after ! 39: # the host libraries and the host tools (which may be a cross compiler) ! 40: # ! 41: target_libs="libm xiberty newlib libio libg++" ! 42: ! 43: ! 44: # these tools are built using the target libs, and are intended to run only ! 45: # in the target environment. we currently have none. ! 46: # ! 47: # note: any program that *uses* libraries that are in the "target_libs" ! 48: # list belongs in this list. those programs are also very likely ! 49: # candidates for the "native_only" list which follows ! 50: # ! 51: target_tools="groff" ! 52: ! 53: ################################################################################ ! 54: ! 55: ## These two lists are of directories that are to be removed from the ! 56: ## ${configdirs} list for either cross-compilations or for native- ! 57: ## compilations. For example, it doesn't make that much sense to ! 58: ## cross-compile Emacs, nor is it terribly useful to compile xiberty in ! 59: ## a native environment. ! 60: ! 61: # directories to be built in the native environment only ! 62: # ! 63: native_only="autoconf cvs emacs fileutils find grep groff gzip hello indent ! 64: ispell m4 rcs recode sed shellutils tar textutils gash tk uudecode wdiff ! 65: gprof" ! 66: ! 67: # directories to be built in a cross environment only ! 68: # ! 69: cross_only="xiberty newlib" ! 70: ! 71: ## All tools belong in one of the four categories, and are assigned above ! 72: # ! 73: configdirs="${host_libs} ${host_tools} ${target_libs} ${target_tools}" ! 74: ! 75: ################################################################################ ! 76: ! 77: srctrigger=move-if-change ! 78: srcname="gnu development package" ! 79: ! 80: # per-host: ! 81: ! 82: case "${host}" in ! 83: m68k-hp-hpux*) host_makefile_frag=config/mh-hp300 ;; ! 84: m68k-apollo-sysv*) host_makefile_frag=config/mh-apollo68 ;; ! 85: m68k-apollo-bsd*) host_makefile_frag=config/mh-a68bsd ;; ! 86: m88k-motorola-sysv*) host_makefile_frag=config/mh-delta88;; ! 87: m88k-dg-dgux*) host_makefile_frag=config/mh-dgux ;; ! 88: mips*-dec-ultrix*) host_makefile_frag=config/mh-decstation ;; ! 89: mips*-sgi-irix5*) host_makefile_frag=config/mh-irix5 ;; ! 90: mips*-sgi-irix4*) host_makefile_frag=config/mh-irix4 ;; ! 91: mips*-sgi-irix3*) host_makefile_frag=config/mh-sysv ;; ! 92: mips*-*-sysv*) host_makefile_frag=config/mh-riscos ;; ! 93: i[34]86-ncr-sysv4*) host_makefile_frag=config/mh-ncr3000 ;; ! 94: i[34]86-*-sco*) host_makefile_frag=config/mh-sco ;; ! 95: i[34]86-*-isc*) host_makefile_frag=config/mh-sysv ;; ! 96: i[34]86-*-linux*) host_makefile_frag=config/mh-linux ;; ! 97: i[34]86-*-solaris2*) host_makefile_frag=config/mh-sysv4 ;; ! 98: i[34]86-*-aix*) host_makefile_frag=config/mh-aix386 ;; ! 99: vax-*-ultrix2*) host_makefile_frag=config/mh-vaxult2 ;; ! 100: *-ibm-aix*) host_makefile_frag=config/mh-aix ;; ! 101: *-bull-bosx*) host_makefile_frag=config/mh-aix ;; ! 102: *-*-solaris2*) host_makefile_frag=config/mh-solaris ;; ! 103: m68k-sun-*) host_makefile_frag=config/mh-sun3 ;; ! 104: *-sun-*) host_makefile_frag=config/mh-sun ;; ! 105: *-hp-hpux*) host_makefile_frag=config/mh-hpux ;; ! 106: *-*-hiux*) host_makefile_frag=config/mh-hpux ;; ! 107: *-*-lynxos*) host_makefile_frag=config/mh-lynxos ! 108: cross_only="xiberty" ;; ! 109: *-*-sysv4*) host_makefile_frag=config/mh-sysv4 ;; ! 110: *-*-sysv*) host_makefile_frag=config/mh-sysv ;; ! 111: esac ! 112: ! 113: # per-target: ! 114: ! 115: gasdir=gas ! 116: use_gnu_ld= ! 117: use_gnu_as= ! 118: ! 119: case "${target}" in ! 120: hppa*-hp-hpux*) target_makefile_frag=config/mt-hppa ;; ! 121: esac ! 122: ! 123: # some tools are so dependent upon X11 that if we're not building with X, ! 124: # it's not even worth trying to configure, much less build, that tool. ! 125: ! 126: case ${with_x} in ! 127: yes | "") # the default value for this tree is that X11 is available ! 128: ;; ! 129: no) ! 130: configdirs=`echo ${configdirs} | sed -e 's/tk//;/gash//'` ! 131: ;; ! 132: *) ! 133: echo "*** bad value \"${with_x}\" for -with-x flag; ignored" 1>&2 ! 134: ;; ! 135: esac ! 136: ! 137: ! 138: ! 139: # Some tools are only suitable for building in a "native" situation. ! 140: # Those are added when we have a host==target configuration. For cross ! 141: # toolchains, we add some directories that should only be useful in a ! 142: # cross-compiler. ! 143: ! 144: if [ x"${host}" = x"${target}" ] ; then ! 145: # when doing a native toolchain, don't build the targets ! 146: # that are in the 'cross only' list ! 147: for i in ${cross_only} ; do ! 148: configdirs=`echo ${configdirs} | sed -e "s/$i//"` ! 149: done ! 150: else ! 151: # similarly, don't build the targets in the 'native only' ! 152: # list when building a cross compiler ! 153: for i in ${native_only} ; do ! 154: configdirs=`echo ${configdirs} | sed -e "s/$i//"` ! 155: done ! 156: fi ! 157: ! 158: # Remove more programs from consideration, based on the host or ! 159: # target this usually means that a port of the program doesn't ! 160: # exist yet. ! 161: ! 162: noconfigdirs="" ! 163: ! 164: case "${host}" in ! 165: i[34]86-*-netbsd*) ! 166: noconfigdirs="tk fileutils" ! 167: ;; ! 168: i[34]86-*-go32) ! 169: noconfigdirs="tcl expect deja-gnu make texinfo bison patch flex byacc send-pr gprof uudecode dejagnu diff" ! 170: ;; ! 171: esac ! 172: ! 173: case "${target}" in ! 174: alpha-dec-osf1*) ! 175: noconfigdirs="$noconfigdirs emacs fileutils grep libg++ libio newlib" ! 176: ;; ! 177: alpha*-*-*) ! 178: noconfigdirs="$noconfigdirs gas libg++ libio newlib" ! 179: ;; ! 180: h8300*-*-* | \ ! 181: h8500-*-*) ! 182: noconfigdirs="$noconfigdirs libg++ libio" ! 183: ;; ! 184: hppa*-*-osf) ! 185: # Do configure ld/binutils/gas for this case. ! 186: ;; ! 187: hppa*-*-*) ! 188: # HP's C compiler doesn't handle Emacs correctly (but on BSD and Mach ! 189: # cc is gcc, and on any system a user should be able to link cc to ! 190: # whatever they want. FIXME, emacs). ! 191: case "${CC}" in ! 192: "" | cc*) noconfigdirs="$noconfigdirs emacs" ;; ! 193: *) ;; ! 194: esac ! 195: noconfigdirs="$noconfigdirs ld binutils shellutils" ! 196: if [ -f ${srcdir}/pagas/configure.in ]; then ! 197: configdirs=`echo ${configdirs} | sed -e 's/gas /pagas /'` ! 198: else ! 199: # It'll still DTRT if "gas" directory isn't here either. ! 200: noconfigdirs="$noconfigdirs gas" ! 201: fi ! 202: gasdir=pagas ! 203: ;; ! 204: i[34]86-*-go32) ! 205: # add the go32 support tools to the list ! 206: configdirs=`echo go32 ${configdirs}` ! 207: ;; ! 208: i[34]86-*-solaris2*) ! 209: # The linker does static linking correctly, but the Solaris C library ! 210: # has bugs such that some important functions won't work when statically ! 211: # linked. (See man pages for getpwuid, for example.) ! 212: noconfigdirs="$noconfigdirs ld" ! 213: ;; ! 214: i[34]86-*-sysv4*) ! 215: # The SYSV4 C compiler doesn't handle Emacs correctly ! 216: case "${CC}" in ! 217: "" | cc*) noconfigdirs="$noconfigdirs emacs" ;; ! 218: *) ;; ! 219: esac ! 220: # but that's okay since emacs doesn't work anyway ! 221: noconfigdirs="$noconfigdirs emacs" ! 222: ! 223: # static versions of several key libraries are not available, ! 224: # so building our entire toolchain is impossible until ! 225: # the GNU linker supports shared libraries ! 226: noconfigdirs="$noconfigdirs ld" ! 227: ;; ! 228: rs6000-*-*) ! 229: # a gcc built textutils will cause the linker to hang on 'join' ! 230: # The CVS server code doesn't work on the RS/6000 ! 231: noconfigdirs="$noconfigdirs ld binutils gas gprof textutils cvs" ! 232: ;; ! 233: m68k-apollo-*) ! 234: noconfigdirs="$noconfigdirs ld binutils gprof" ! 235: ;; ! 236: mips*-*-irix5*) ! 237: # The GNU linker does not support shared libraries. ! 238: noconfigdirs="$noconfigdirs ld gprof" ! 239: ;; ! 240: mips*-*-*) ! 241: noconfigdirs="$noconfigdirs gprof" ! 242: ;; ! 243: sh-*-*) ! 244: case "${host}" in ! 245: i[34]86-*-go32) ;; # don't add gprof back in ! 246: *) configdirs=`echo gprof ${configdirs}` ;; ! 247: esac ! 248: ;; ! 249: sparc-*-sunos4*) ! 250: use_gnu_ld=no ! 251: ;; ! 252: sparc-*-solaris2*) ! 253: # See i386-*-solaris2* above. ! 254: noconfigdirs="$noconfigdirs ld" ! 255: ;; ! 256: i[34]86-*-sco*) ! 257: noconfigdirs="$noconfigdirs gprof" ! 258: ;; ! 259: *-*-sysv4) ! 260: use_gnu_ld=no ! 261: ;; ! 262: *-*-vms) ! 263: noconfigdirs="$noconfigdirs bfd ld binutils gdb" ! 264: ;; ! 265: esac ! 266: ! 267: notsupp="" ! 268: for dir in . $noconfigdirs ; do ! 269: if [ $dir != . ] && echo "# ${configdirs} #" | grep "${dir} " >/dev/null 2>&1 ; then ! 270: configdirs=`echo $configdirs | sed -e "s/${dir} / /"` ! 271: if [ -r $srcdir/$dir/configure ] || [ -r $srcdir/$dir/configure.in ]; then ! 272: notsupp="$notsupp $dir" ! 273: fi ! 274: fi ! 275: done ! 276: ! 277: # Produce a warning message for the subdirs we can't configure. ! 278: # This isn't especially interesting in the Cygnus tree, but in the individual ! 279: # FSF releases, it's important to let people know when their machine isn't ! 280: # supported by the one or two programs in a package. ! 281: ! 282: if [ x"${notsupp}" != x ]; then ! 283: echo "*** This configuration is not supported in the following subdirectories:" 1>&2 ! 284: echo " ${notsupp}" 1>&2 ! 285: echo " (Any other directories should still work fine.)" 1>&2 ! 286: fi ! 287: ! 288: # Set with_gnu_as and with_gnu_ld as appropriate. ! 289: # ! 290: # This is done by determining whether or not the appropriate directory ! 291: # is available, and by checking whether or not specific configurations ! 292: # have requested that this magic not happen. ! 293: # ! 294: # The command line options always override the explicit settings in ! 295: # configure.in, and the settings in configure.in override this magic. ! 296: # ! 297: # If the default for a toolchain is to use GNU as and ld, and you don't ! 298: # want to do that, then you should use the --without-gnu-as and ! 299: # --without-gnu-ld options for the configure script. ! 300: ! 301: if [ x${use_gnu_as} = x ] ; then ! 302: if [ x${with_gnu_as} != xno ] && echo ${configdirs} | grep "${gasdir} " > /dev/null 2>&1 && [ -d ${srcdir}/${gasdir} ] ; then ! 303: with_gnu_as=yes ! 304: withoptions="$withoptions --with-gnu-as" ! 305: fi ! 306: fi ! 307: ! 308: if [ x${use_gnu_ld} = x ] ; then ! 309: if [ x${with_gnu_ld} != xno ] && echo ${configdirs} | grep ld > /dev/null 2>&1 && [ -d ${srcdir}/ld ] ; then ! 310: with_gnu_ld=yes ! 311: withoptions="$withoptions --with-gnu-ld" ! 312: fi ! 313: fi ! 314: ! 315: # ! 316: # Local Variables: ! 317: # fill-column: 131 ! 318: # End: ! 319: #
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.