Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: Nathanael Nerode <neroden@twcny.rr.com>
To: zack@codesourcery.com
Cc: gdb-patches@sources.redhat.com, binutils@sources.redhat.com,
	gcc-patches@gcc.gnu.org
Subject: Re: [RFC] Update to current automake/autoconf/libtool versions
Date: Fri, 06 Dec 2002 05:28:00 -0000	[thread overview]
Message-ID: <20021206005522.GA11907@doctormoo> (raw)

[-- Attachment #1: Type: text/plain, Size: 991 bytes --]

>Going over it all again, I realize that we could probably just
>redefine AC_NO_EXECUTABLES to do what we want.  We'd have to
>specialize its definition for every version of autoconf that we cared
>about, and check at every new release that it hadn't broken, but it
>would work.  I guess it's not impossible after all.
>
>zw

*twisted half-grin*

For the top level, I'd been unable to avoid writing 
complete replacements for AC_PROG_CC and AC_PROG_CXX, and it
was really nasty.

So this is actually better than I'd hoped.

Thanks!  Writing a specialized implementation of AC_NO_EXECUTABLES will
make my life easier, probably. :-)

The real reason I want autoconf 2.5x is twofold:
* it handles AC_REQUIRES on AC_CANONICAL_* properly
* it allows the use of m4_include, so I can make a master macro file
(in top level config, for instance) and use it even in directories 
without automake.

You might be amused by the most basic parts of my experimental 
aclocal.m4 include file.

--Nathanael

[-- Attachment #2: aclocal.m4 --]
[-- Type: text/plain, Size: 2431 bytes --]

# Autoconf M4 include file defining valuable macros for complex Canadian
# cross builds.

####
# _NCN_TOOL_PREFIXES
# Get prefixes for cross-compilers to the host and the target.
# This requires that AC_CANONICAL_SYSTEM be called beforehand.
# Unfortunately, AC_REQUIRE doesn't work properly in this case under
# autoconf 2.13.
AC_DEFUN([_NCN_TOOL_PREFIXES],
[ncn_tool_prefix=
test -n "$host_alias" && ncn_tool_prefix=$host_alias-
ncn_target_tool_prefix=
test -n "$target_alias" && ncn_target_tool_prefix=$target_alias-
]) []dnl # _NCN_TOOL_PREFIXES

####
# NCN_CHECK_TARGET_TOOL(variable, prog-to-check-for,[value-if-not-found],[path])
# Like AC_CHECK_TOOL, but tries a prefix of the target, not the host.
# Code is pretty much lifted from autoconf2.53.

AC_DEFUN([NCN_CHECK_TARGET_TOOL],
[AC_REQUIRE([_NCN_TOOL_PREFIXES]) []dnl
if test -n "$ncn_target_tool_prefix"; then
  AC_CHECK_PROG([$1], [${ncn_target_tool_prefix}$2], 
                [${ncn_target_tool_prefix}$2], , [$4])
fi
if test -z "$ac_cv_prog_$1" ; then
  ncn_ct_$1=$$1
  AC_CHECK_PROG([ncn_ct_$1], [$2], [$2], [$3], [$4])
  $1=$ncn_ct_$1
else
  $1="$ac_cv_prog_$1"
fi
]) []dnl # NCN_CHECK_TARGET_TOOL

####
# NCN_STRICT_CHECK_TOOL(variable, prog-to-check-for,[value-if-not-found],[path])
# Like AC_CHECK_TOOL, but requires the prefix if build!=host.

AC_DEFUN([NCN_STRICT_CHECK_TOOL],
[AC_REQUIRE([_NCN_TOOL_PREFIXES]) []dnl
if test -n "$ncn_tool_prefix"; then
  AC_CHECK_PROG([$1], [${ncn_tool_prefix}$2], 
                [${ncn_tool_prefix}$2], , [$4])
fi
if test -z "$ac_cv_prog_$1" ; then
  if test $build = $host ; then
    ncn_ct_$1=$$1
    AC_CHECK_PROG([ncn_ct_$1], [$2], [$2], [$3], [$4]) 
    $1=$ncn_ct_$1
  else
    $1="$3"
  fi
else
  $1="$ac_cv_prog_$1"
fi
]) []dnl # NCN_STRICT_CHECK_TOOL


####
# NCN_STRICT_CHECK_TARGET_TOOL(variable, prog-to-check-for,[value-if-not-found],[path])
# Like NCN_CHECK_TARGET_TOOL, but requires the prefix if build!=target.

AC_DEFUN([NCN_STRICT_CHECK_TARGET_TOOL],
[AC_REQUIRE([_NCN_TOOL_PREFIXES]) []dnl
if test -n "$ncn_target_tool_prefix"; then
  AC_CHECK_PROG([$1], [${ncn_target_tool_prefix}$2], 
                [${ncn_target_tool_prefix}$2], , [$4])
fi
if test -z "$ac_cv_prog_$1" ; then
  if test $build = $target ; then
    ncn_ct_$1=$$1
    AC_CHECK_PROG([ncn_ct_$1], [$2], [$2], [$3], [$4]) 
    $1=$ncn_ct_$1
  else
    $1="$3"
  fi
else
  $1="$ac_cv_prog_$1"
fi
]) []dnl # NCN_STRICT_CHECK_TARGET_TOOL

             reply	other threads:[~2002-12-06  0:56 UTC|newest]

Thread overview: 69+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-12-06  5:28 Nathanael Nerode [this message]
     [not found] <9A4230D6-1D26-11D7-BFCA-00039396EEB8@apple.com>
2003-01-12 13:22 ` Alexandre Oliva
  -- strict thread matches above, loose matches on Subject: below --
2002-12-05 14:42 Joern Rennecke
2002-12-05 14:40 Nathanael Nerode
2002-12-05 15:19 ` Zack Weinberg
2002-12-06 10:21   ` Tom Tromey
2002-12-07 13:06   ` Alexandre Oliva
2002-12-07 16:03     ` Zack Weinberg
2002-12-09 19:16       ` Alexandre Oliva
2002-12-09 21:52         ` Geoff Keating
2002-12-08 13:11     ` Tom Tromey
2002-12-05 11:08 Nathanael Nerode
2002-12-05 11:31 ` Andrew Cagney
2002-12-05 13:31 ` Zack Weinberg
2002-12-05 14:36   ` Alan Modra
2002-12-05 14:56     ` Ian Lance Taylor
2002-12-05 15:22       ` Alan Modra
2002-12-05 15:43         ` Ian Lance Taylor
2002-12-05 15:51           ` Andrew Cagney
2002-12-05 15:47         ` Mike Stump
2002-12-05 16:30           ` Alan Modra
2002-12-05 16:45             ` Zack Weinberg
2002-12-08  2:49         ` Klee Dienes
2002-12-05 14:29 ` Christopher Faylor
2002-12-06  6:45 ` Maciej W. Rozycki
2002-12-08 10:53 ` Klee Dienes
2002-12-05 10:15 Michael Elizabeth Chastain
2002-12-05 10:37 ` Klee Dienes
2002-11-13 10:32 [RFA/PATCH] Darwin fixes for ltconfig, ltcf-c.sh Klee Dienes
2002-12-04 22:04 ` [RFC] Update to current automake/autoconf/libtool versions Klee Dienes
2002-12-05  5:26   ` Hans-Peter Nilsson
2002-12-05 14:07     ` Alan Modra
2002-12-05  7:43   ` Andrew Cagney
2002-12-05  8:22     ` Klee Dienes
2002-12-05  9:01       ` Andrew Cagney
2002-12-05 12:55         ` Klee Dienes
2002-12-05 13:03           ` Daniel Jacobowitz
2002-12-05 13:13             ` Andrew Cagney
2002-12-05 13:16               ` Daniel Jacobowitz
2002-12-05 13:08           ` Andrew Cagney
2002-12-05 13:18             ` Klee Dienes
2002-12-05  8:28     ` DJ Delorie
2002-12-05  9:37       ` Klee Dienes
2002-12-05  9:42         ` DJ Delorie
2002-12-05 10:28           ` Klee Dienes
2002-12-05  9:31     ` H. J. Lu
2002-12-05  7:44   ` Maciej W. Rozycki
2002-12-05  9:01     ` Klee Dienes
2002-12-05  8:09   ` Daniel Jacobowitz
2002-12-05  8:29     ` DJ Delorie
2002-12-05  8:35       ` Daniel Jacobowitz
2002-12-05  8:37         ` DJ Delorie
2002-12-05  8:40         ` Maciej W. Rozycki
2002-12-05  8:44           ` Daniel Jacobowitz
2002-12-05  9:19             ` Elena Zannoni
2002-12-05  9:54             ` Klee Dienes
2002-12-05 10:10               ` Maciej W. Rozycki
2002-12-05 10:59               ` Doug Evans
2002-12-05 12:11                 ` Klee Dienes
2002-12-05 12:23                   ` Ian Lance Taylor
2002-12-05 14:29                     ` Klee Dienes
2002-12-06  5:34                 ` Maciej W. Rozycki
2002-12-06  7:25                   ` DJ Delorie
2002-12-06  8:06                     ` Maciej W. Rozycki
2002-12-06  8:47                       ` DJ Delorie
2002-12-05 10:59               ` Andrew Cagney
2002-12-06  5:52                 ` Maciej W. Rozycki
2002-12-05 13:59               ` Ben Elliston
2002-12-05 13:41                 ` Ben Elliston
2002-12-30 16:10   ` Alexandre Oliva

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20021206005522.GA11907@doctormoo \
    --to=neroden@twcny.rr.com \
    --cc=binutils@sources.redhat.com \
    --cc=gcc-patches@gcc.gnu.org \
    --cc=gdb-patches@sources.redhat.com \
    --cc=zack@codesourcery.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox