public inbox for crossgcc@sourceware.org
 help / color / mirror / Atom feed
* [PATCH 2 of 2] companion_tools/autoconf: add autoconf tool
  2010-01-11 13:58 [PATCH 0 of 2] Add autoconf as a companion tool - 2nd rev Richard Strand
@ 2010-01-11 13:58 ` Richard Strand
  2010-01-11 18:48   ` Yann E. MORIN
  2010-01-11 13:58 ` [PATCH 1 of 2] scripts/crosstool-ng: Change overide bin dir Richard Strand
  1 sibling, 1 reply; 11+ messages in thread
From: Richard Strand @ 2010-01-11 13:58 UTC (permalink / raw)
  To: Yann E. MORIN; +Cc: crossgcc

# HG changeset patch
# User Richard Strand <richard.strand@icomera.com>
# Date 1263218092 0
# Node ID 8dc1ca6bea93dc1d69ab3b5a12790949ce794d55
# Parent  2e2ead7d3a6e90bb2015dc87d8e0ca09137b1a44
companion_tools/autoconf: add autoconf tool

Initial version of adding autoconf as a companion tool.

Signed-off-by: Richard Strand <richard.strand@icomera.com>

diff -r 2e2ead7d3a6e -r 8dc1ca6bea93 config/companion_tools.in
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/config/companion_tools.in	Mon Jan 11 13:54:52 2010 +0000
@@ -0,0 +1,25 @@
+# Companion tools config options
+
+if EXPERIMENTAL
+
+menu "Companion tools"
+
+config COMP_TOOLS
+    bool
+    prompt "READ HELP before you say 'Y' here !!!"
+    help
+      No help yet - continue at your peril!
+
+if COMP_TOOLS
+
+config COMP_TOOLS_autoconf
+    bool
+    prompt "autoconf"
+    help
+      No help yet
+
+endif
+
+endmenu
+
+endif
diff -r 2e2ead7d3a6e -r 8dc1ca6bea93 config/config.in
--- a/config/config.in	Mon Jan 11 13:54:05 2010 +0000
+++ b/config/config.in	Mon Jan 11 13:54:52 2010 +0000
@@ -8,3 +8,4 @@
 source config/debug.in
 source config/tools.in
 source config/companion_libs.in
+source config/companion_tools.in
diff -r 2e2ead7d3a6e -r 8dc1ca6bea93 scripts/build/companion_tools.sh
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/scripts/build/companion_tools.sh	Mon Jan 11 13:54:52 2010 +0000
@@ -0,0 +1,38 @@
+# Wrapper to build the companion tools facilities
+
+# List all companion tools facilities, and parse their scripts
+CT_COMP_TOOLS_FACILITY_LIST=
+for f in "${CT_LIB_DIR}/scripts/build/companion_tools/"*.sh; do
+    _f="$(basename "${f}" .sh)"
+    _f="${_f#???-}"
+    __f="CT_COMP_TOOLS_${_f}"
+    if [ "${!__f}" = "y" ]; then
+        CT_DoLog DEBUG "Enabling companion tools '${_f}'"
+        . "${f}"
+        CT_COMP_TOOLS_FACILITY_LIST="${CT_COMP_TOOLS_FACILITY_LIST} ${_f}"
+    else
+        CT_DoLog DEBUG "Disabling companion tools '${_f}'"
+    fi
+done
+
+# Download the companion tools facilities
+do_companion_tools_get() {
+    for f in ${CT_COMP_TOOLS_FACILITY_LIST}; do
+        do_companion_tools_${f}_get
+    done
+}
+
+# Extract and patch the companion tools facilities
+do_companion_tools_extract() {
+    for f in ${CT_COMP_TOOLS_FACILITY_LIST}; do
+        do_companion_tools_${f}_extract
+    done
+}
+
+# Build the companion tools facilities
+do_companion_tools() {
+    for f in ${CT_COMP_TOOLS_FACILITY_LIST}; do
+        do_companion_tools_${f}_build
+    done
+}
+
diff -r 2e2ead7d3a6e -r 8dc1ca6bea93 scripts/build/companion_tools/200-autoconf.sh
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/scripts/build/companion_tools/200-autoconf.sh	Mon Jan 11 13:54:52 2010 +0000
@@ -0,0 +1,25 @@
+# Build script for autoconf
+
+CT_AUTOCONF_VERSION=2.65
+
+do_companion_tools_autoconf_get() {
+    CT_GetFile "autoconf-${CT_AUTOCONF_VERSION}" {ftp,http}://ftp.gnu.org/gnu/autoconf/
+}
+
+do_companion_tools_autoconf_extract() {
+    CT_Extract "autoconf-${CT_AUTOCONF_VERSION}"
+    CT_Patch "autoconf-${CT_AUTOCONF_VERSION}"
+}
+
+do_companion_tools_autoconf_build() {
+    CT_DoStep INFO "Installing autoconf"
+    mkdir -p "${CT_BUILD_DIR}/build-autoconf"
+    CT_Pushd "${CT_BUILD_DIR}/build-autoconf"
+    CT_DoExecLog ALL ${CONFIG_SHELL} \
+    "${CT_SRC_DIR}/autoconf-${CT_AUTOCONF_VERSION}/configure" \
+        --prefix="${CT_WORK_DIR}/tools"
+    CT_DoExecLog ALL make
+    CT_DoExecLog ALL make install
+    CT_Popd
+    CT_EndStep
+}
diff -r 2e2ead7d3a6e -r 8dc1ca6bea93 scripts/crosstool-NG.sh.in
--- a/scripts/crosstool-NG.sh.in	Mon Jan 11 13:54:05 2010 +0000
+++ b/scripts/crosstool-NG.sh.in	Mon Jan 11 13:54:52 2010 +0000
@@ -114,6 +114,7 @@
 # export any variable, nor re-parse the configuration and functions files.
 . "${CT_LIB_DIR}/scripts/build/internals.sh"
 . "${CT_LIB_DIR}/scripts/build/arch/${CT_ARCH}.sh"
+. "${CT_LIB_DIR}/scripts/build/companion_tools.sh"
 . "${CT_LIB_DIR}/scripts/build/kernel/${CT_KERNEL}.sh"
 . "${CT_LIB_DIR}/scripts/build/companion_libs/gmp.sh"
 . "${CT_LIB_DIR}/scripts/build/companion_libs/mpfr.sh"
@@ -493,6 +494,7 @@
         CT_DoLog INFO "Downloading forbidden by configuration, skipping downloads"
     else
         CT_DoStep INFO "Retrieving needed toolchain components' tarballs"
+        do_companion_tools_get
         do_kernel_get
         do_gmp_get
         do_mpfr_get
@@ -512,6 +514,14 @@
             CT_DoForceRmdir "${CT_SRC_DIR}"
             CT_DoExecLog ALL mkdir -p "${CT_SRC_DIR}"
         fi
+
+        if [ "${CT_COMP_TOOLS}" = "y" ]; then
+          CT_DoStep INFO "Extracting, patching and installing companion tools"
+          do_companion_tools_extract
+          do_companion_tools
+          CT_EndStep
+        fi
+
         CT_DoStep INFO "Extracting and patching toolchain components"
         do_kernel_extract
         do_gmp_extract

--
For unsubscribe information see http://sourceware.org/lists.html#faq

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [PATCH 1 of 2] scripts/crosstool-ng: Change overide bin dir
  2010-01-11 13:58 [PATCH 0 of 2] Add autoconf as a companion tool - 2nd rev Richard Strand
  2010-01-11 13:58 ` [PATCH 2 of 2] companion_tools/autoconf: add autoconf tool Richard Strand
@ 2010-01-11 13:58 ` Richard Strand
  2010-01-11 18:34   ` Yann E. MORIN
  1 sibling, 1 reply; 11+ messages in thread
From: Richard Strand @ 2010-01-11 13:58 UTC (permalink / raw)
  To: Yann E. MORIN; +Cc: crossgcc

# HG changeset patch
# User Richard Strand <richard.strand@icomera.com>
# Date 1263218045 0
# Node ID 2e2ead7d3a6e90bb2015dc87d8e0ca09137b1a44
# Parent  dbd5078816f93798b6811b82a900545f6d36035a
scripts/crosstool-ng: Change overide bin dir

Change the overide bin dir so it can be used by companion tools

Signed-off-by: Richard Strand <richard.strand@icomera.com>

diff -r dbd5078816f9 -r 2e2ead7d3a6e scripts/crosstool-NG.sh.in
--- a/scripts/crosstool-NG.sh.in	Sun Jan 10 17:43:23 2010 +0100
+++ b/scripts/crosstool-NG.sh.in	Mon Jan 11 13:54:05 2010 +0000
@@ -77,7 +77,7 @@
 # Contains symlinks to the tools found by ./configure
 # Note: CT_DoLog and CT_DoExecLog do not use any of those tool, so
 # they can be safely used
-CT_BIN_OVERIDE_DIR="${CT_WORK_DIR}/bin"
+CT_BIN_OVERIDE_DIR="${CT_WORK_DIR}/tools/bin"
 CT_DoLog DEBUG "Creating bin-overide for tools in '${CT_BIN_OVERIDE_DIR}'"
 CT_DoExecLog DEBUG mkdir -p "${CT_BIN_OVERIDE_DIR}"
 cat "${CT_LIB_DIR}/paths.mk" |while read trash line; do

--
For unsubscribe information see http://sourceware.org/lists.html#faq

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [PATCH 0 of 2] Add autoconf as a companion tool - 2nd rev
@ 2010-01-11 13:58 Richard Strand
  2010-01-11 13:58 ` [PATCH 2 of 2] companion_tools/autoconf: add autoconf tool Richard Strand
  2010-01-11 13:58 ` [PATCH 1 of 2] scripts/crosstool-ng: Change overide bin dir Richard Strand
  0 siblings, 2 replies; 11+ messages in thread
From: Richard Strand @ 2010-01-11 13:58 UTC (permalink / raw)
  To: Yann E. MORIN; +Cc: crossgcc

Hi Yann, All,

Thanks for the feedback from the previous set of patches. I have made the alterations you suggested, please let me know if this is ok.

Regards,

Richard Strand

--
For unsubscribe information see http://sourceware.org/lists.html#faq

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH 1 of 2] scripts/crosstool-ng: Change overide bin dir
  2010-01-11 13:58 ` [PATCH 1 of 2] scripts/crosstool-ng: Change overide bin dir Richard Strand
@ 2010-01-11 18:34   ` Yann E. MORIN
  0 siblings, 0 replies; 11+ messages in thread
From: Yann E. MORIN @ 2010-01-11 18:34 UTC (permalink / raw)
  To: Richard Strand; +Cc: crossgcc

Richard, All,

On Monday 11 January 2010 14:57:55 Richard Strand wrote:
> # HG changeset patch
> # User Richard Strand <richard.strand@icomera.com>
> # Date 1263218045 0
> # Node ID 2e2ead7d3a6e90bb2015dc87d8e0ca09137b1a44
> # Parent  dbd5078816f93798b6811b82a900545f6d36035a
> scripts/crosstool-ng: Change overide bin dir
> 
> Change the overide bin dir so it can be used by companion tools

OK, keep it for when the patch series is complete.

Regards,
Yann E. MORIN.

-- 
.-----------------.--------------------.------------------.--------------------.
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___               |
| +33 223 225 172 `------------.-------:  X  AGAINST      |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
`------------------------------^-------^------------------^--------------------'



--
For unsubscribe information see http://sourceware.org/lists.html#faq

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH 2 of 2] companion_tools/autoconf: add autoconf tool
  2010-01-11 13:58 ` [PATCH 2 of 2] companion_tools/autoconf: add autoconf tool Richard Strand
@ 2010-01-11 18:48   ` Yann E. MORIN
  2010-01-11 19:57     ` Richard Strand
  2010-01-11 20:20     ` Richard Strand
  0 siblings, 2 replies; 11+ messages in thread
From: Yann E. MORIN @ 2010-01-11 18:48 UTC (permalink / raw)
  To: Richard Strand; +Cc: crossgcc

Richard, All,

On Monday 11 January 2010 14:57:56 Richard Strand wrote:
> # HG changeset patch
> # User Richard Strand <richard.strand@icomera.com>
> # Date 1263218092 0
> # Node ID 8dc1ca6bea93dc1d69ab3b5a12790949ce794d55
> # Parent  2e2ead7d3a6e90bb2015dc87d8e0ca09137b1a44
> companion_tools/autoconf: add autoconf tool
> 
> Initial version of adding autoconf as a companion tool.
> 
> Signed-off-by: Richard Strand <richard.strand@icomera.com>
> 
> diff -r 2e2ead7d3a6e -r 8dc1ca6bea93 config/companion_tools.in
> --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
> +++ b/config/companion_tools.in	Mon Jan 11 13:54:52 2010 +0000
> @@ -0,0 +1,25 @@
> +# Companion tools config options
> +
> +if EXPERIMENTAL
> +
> +menu "Companion tools"
> +
> +config COMP_TOOLS
> +    bool
> +    prompt "READ HELP before you say 'Y' here !!!"
> +    help
> +      No help yet - continue at your peril!

OK, now what about this help text and prompt:

comment "READ HELP before you say 'Y' below !!!"
prompt "Build some companion tools"
help
  Crosstool-NG relies on some external tools to be recent enough, namely:
    autoconf >= 2.65
    blah     >= blah
  
  If your system has older versions, we can build them for you,
  but you are strongly encouraged to update your system instead!

> +
> +if COMP_TOOLS
> +
> +config COMP_TOOLS_autoconf
> +    bool
> +    prompt "autoconf"
> +    help
> +      No help yet

No help needed for each and all entries. The help for COMP_TOOLS
will have to be clear enough. After all, if the user selects this,
then we'll assume that he/she knows what he/she's doin'.

> +
> +endif
> +
> +endmenu
> +
> +endif
> diff -r 2e2ead7d3a6e -r 8dc1ca6bea93 config/config.in
> --- a/config/config.in	Mon Jan 11 13:54:05 2010 +0000
> +++ b/config/config.in	Mon Jan 11 13:54:52 2010 +0000
> @@ -8,3 +8,4 @@
>  source config/debug.in
>  source config/tools.in
>  source config/companion_libs.in
> +source config/companion_tools.in
> diff -r 2e2ead7d3a6e -r 8dc1ca6bea93 scripts/build/companion_tools.sh
> --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
> +++ b/scripts/build/companion_tools.sh	Mon Jan 11 13:54:52 2010 +0000
> @@ -0,0 +1,38 @@
> +# Wrapper to build the companion tools facilities
> +
> +# List all companion tools facilities, and parse their scripts
> +CT_COMP_TOOLS_FACILITY_LIST=
> +for f in "${CT_LIB_DIR}/scripts/build/companion_tools/"*.sh; do
> +    _f="$(basename "${f}" .sh)"
> +    _f="${_f#???-}"
> +    __f="CT_COMP_TOOLS_${_f}"
> +    if [ "${!__f}" = "y" ]; then
> +        CT_DoLog DEBUG "Enabling companion tools '${_f}'"
> +        . "${f}"
> +        CT_COMP_TOOLS_FACILITY_LIST="${CT_COMP_TOOLS_FACILITY_LIST} ${_f}"
> +    else
> +        CT_DoLog DEBUG "Disabling companion tools '${_f}'"
> +    fi
> +done
> +
> +# Download the companion tools facilities
> +do_companion_tools_get() {
> +    for f in ${CT_COMP_TOOLS_FACILITY_LIST}; do
> +        do_companion_tools_${f}_get
> +    done
> +}
> +
> +# Extract and patch the companion tools facilities
> +do_companion_tools_extract() {
> +    for f in ${CT_COMP_TOOLS_FACILITY_LIST}; do
> +        do_companion_tools_${f}_extract
> +    done
> +}
> +
> +# Build the companion tools facilities
> +do_companion_tools() {
> +    for f in ${CT_COMP_TOOLS_FACILITY_LIST}; do
> +        do_companion_tools_${f}_build
> +    done
> +}
> +

OK.

> diff -r 2e2ead7d3a6e -r 8dc1ca6bea93 scripts/build/companion_tools/200-autoconf.sh
> --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
> +++ b/scripts/build/companion_tools/200-autoconf.sh	Mon Jan 11 13:54:52 2010 +0000
> @@ -0,0 +1,25 @@
> +# Build script for autoconf
> +
> +CT_AUTOCONF_VERSION=2.65

Yes, good.

> +
> +do_companion_tools_autoconf_get() {
> +    CT_GetFile "autoconf-${CT_AUTOCONF_VERSION}" {ftp,http}://ftp.gnu.org/gnu/autoconf/

I know it's not the case everywhere, but could you try to keep lines
shorter than 80 columns?

> +}
> +
> +do_companion_tools_autoconf_extract() {
> +    CT_Extract "autoconf-${CT_AUTOCONF_VERSION}"
> +    CT_Patch "autoconf-${CT_AUTOCONF_VERSION}"
> +}
> +
> +do_companion_tools_autoconf_build() {
> +    CT_DoStep INFO "Installing autoconf"

INFO --> EXTRA

> +    mkdir -p "${CT_BUILD_DIR}/build-autoconf"
> +    CT_Pushd "${CT_BUILD_DIR}/build-autoconf"
> +    CT_DoExecLog ALL ${CONFIG_SHELL} \

Directly call ./configure, do not use CT_CONFIG_SHELL. It's the
responsibility of ./configure to use CONFIG_SHELL (note there's
no leading CT_) internally. CONFIG_SHELL is correctly set and
exported.

> +    "${CT_SRC_DIR}/autoconf-${CT_AUTOCONF_VERSION}/configure" \
> +        --prefix="${CT_WORK_DIR}/tools"
> +    CT_DoExecLog ALL make
> +    CT_DoExecLog ALL make install
> +    CT_Popd
> +    CT_EndStep
> +}

I don't know if this build procedure works, and I'll trust you on that.

> diff -r 2e2ead7d3a6e -r 8dc1ca6bea93 scripts/crosstool-NG.sh.in
> --- a/scripts/crosstool-NG.sh.in	Mon Jan 11 13:54:05 2010 +0000
> +++ b/scripts/crosstool-NG.sh.in	Mon Jan 11 13:54:52 2010 +0000
> @@ -114,6 +114,7 @@
>  # export any variable, nor re-parse the configuration and functions files.
>  . "${CT_LIB_DIR}/scripts/build/internals.sh"
>  . "${CT_LIB_DIR}/scripts/build/arch/${CT_ARCH}.sh"
> +. "${CT_LIB_DIR}/scripts/build/companion_tools.sh"
>  . "${CT_LIB_DIR}/scripts/build/kernel/${CT_KERNEL}.sh"
>  . "${CT_LIB_DIR}/scripts/build/companion_libs/gmp.sh"
>  . "${CT_LIB_DIR}/scripts/build/companion_libs/mpfr.sh"
> @@ -493,6 +494,7 @@
>          CT_DoLog INFO "Downloading forbidden by configuration, skipping downloads"
>      else
>          CT_DoStep INFO "Retrieving needed toolchain components' tarballs"
> +        do_companion_tools_get
>          do_kernel_get
>          do_gmp_get
>          do_mpfr_get
> @@ -512,6 +514,14 @@
>              CT_DoForceRmdir "${CT_SRC_DIR}"
>              CT_DoExecLog ALL mkdir -p "${CT_SRC_DIR}"
>          fi
> +
> +        if [ "${CT_COMP_TOOLS}" = "y" ]; then
> +          CT_DoStep INFO "Extracting, patching and installing companion tools"
> +          do_companion_tools_extract
> +          do_companion_tools
> +          CT_EndStep
> +        fi
> +
>          CT_DoStep INFO "Extracting and patching toolchain components"
>          do_kernel_extract
>          do_gmp_extract
> 
> 

Could you please address the few remaining issues?
Otherwise, looks good! :-)

Regards,
Yann E. MORIN.

-- 
.-----------------.--------------------.------------------.--------------------.
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___               |
| +33 223 225 172 `------------.-------:  X  AGAINST      |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
`------------------------------^-------^------------------^--------------------'



--
For unsubscribe information see http://sourceware.org/lists.html#faq

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH 2 of 2] companion_tools/autoconf: add autoconf tool
  2010-01-11 18:48   ` Yann E. MORIN
@ 2010-01-11 19:57     ` Richard Strand
  2010-01-11 20:42       ` Richard Strand
  2010-01-11 20:44       ` Yann E. MORIN
  2010-01-11 20:20     ` Richard Strand
  1 sibling, 2 replies; 11+ messages in thread
From: Richard Strand @ 2010-01-11 19:57 UTC (permalink / raw)
  To: Yann E. MORIN; +Cc: crossgcc

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

Yann E. MORIN wrote:
>> +    mkdir -p "${CT_BUILD_DIR}/build-autoconf"
>> +    CT_Pushd "${CT_BUILD_DIR}/build-autoconf"
>> +    CT_DoExecLog ALL ${CONFIG_SHELL} \
>>     
>
> Directly call ./configure, do not use CT_CONFIG_SHELL. It's the
> responsibility of ./configure to use CONFIG_SHELL (note there's
> no leading CT_) internally. CONFIG_SHELL is correctly set and
> exported.
>   

I know this is how it is supposed to work, but CONFIG_SHELL actually 
seems to cause problems on my system.
I am using Ubuntu 9.04 where /bin/sh points to dash and SHELL=/bin/bash. 
When CONFIG_SHELL=/bin/bash then autoconf configure fails on my system 
with the error "configure: error: no acceptable m4 could be found in 
$PATH.". When CONFIG_SHELL is not set, or configure is explicitly called 
with bash then this problem goes away!

I don't experience this issue when building any of the other packages in 
crosstool-ng. :(

I have attached a text file with output from my shell with an example of 
what happens.

Regards,

Richard Strand


[-- Attachment #2: odd_autoconf_configure_output.txt --]
[-- Type: text/plain, Size: 2797 bytes --]

richard@richard-laptop:/tmp$ tar jxf ~/src/autoconf-2.65.tar.bz2 
richard@richard-laptop:/tmp$ cd autoconf-2.65/
richard@richard-laptop:/tmp/autoconf-2.65$ export CONFIG_SHELL=/bin/bash
richard@richard-laptop:/tmp/autoconf-2.65$ ./configure 
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether /bin/sh -n is known to work... no
checking for characters that cannot appear in file names... none
checking whether directories can have trailing spaces... yes
checking for expr... /usr/bin/expr
checking for GNU M4 that supports accurate traces... configure: error: no acceptable m4 could be found in $PATH.
GNU M4 1.4.6 or later is required; 1.4.13 is recommended
richard@richard-laptop:/tmp/autoconf-2.65$ unset CONFIG_SHELL
richard@richard-laptop:/tmp/autoconf-2.65$ ./configure 
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether /bin/sh -n is known to work... no
checking for characters that cannot appear in file names... none
checking whether directories can have trailing spaces... yes
checking for expr... /usr/bin/expr
checking for GNU M4 that supports accurate traces... /usr/bin/m4
checking whether /usr/bin/m4 accepts --gnu... no
configure: WARNING: The version of M4 that was found does not support -g.
configure: WARNING: Using it with POSIXLY_CORRECT set may cause problems.
checking how m4 supports trace files... --debugfile
checking for perl... /usr/bin/perl
checking whether /usr/bin/perl Fcntl::flock is implemented... yes
checking for emacs... no
checking for xemacs... no
checking for emacs... no
checking where .elc files should go... ${datadir}/emacs/site-lisp
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for a sed that does not truncate output... /bin/sed
checking whether make is case sensitive... yes
configure: creating ./config.status
config.status: creating tests/Makefile
config.status: creating tests/atlocal
config.status: creating man/Makefile
config.status: creating lib/emacs/Makefile
config.status: creating Makefile
config.status: creating doc/Makefile
config.status: creating lib/Makefile
config.status: creating lib/Autom4te/Makefile
config.status: creating lib/autoscan/Makefile
config.status: creating lib/m4sugar/Makefile
config.status: creating lib/autoconf/Makefile
config.status: creating lib/autotest/Makefile
config.status: creating bin/Makefile
config.status: executing tests/atconfig commands



[-- Attachment #3: Type: text/plain, Size: 71 bytes --]

--
For unsubscribe information see http://sourceware.org/lists.html#faq

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH 2 of 2] companion_tools/autoconf: add autoconf tool
  2010-01-11 18:48   ` Yann E. MORIN
  2010-01-11 19:57     ` Richard Strand
@ 2010-01-11 20:20     ` Richard Strand
  2010-01-11 20:57       ` Yann E. MORIN
  1 sibling, 1 reply; 11+ messages in thread
From: Richard Strand @ 2010-01-11 20:20 UTC (permalink / raw)
  To: Yann E. MORIN; +Cc: crossgcc

Hi Yann,

Sorry about sending this twice, but the list rejected the last one 
because I accidentally left my email signature on.

Yann E. MORIN wrote:
> OK, now what about this help text and prompt:
>
> comment "READ HELP before you say 'Y' below !!!"
> prompt "Build some companion tools"
> help
>   Crosstool-NG relies on some external tools to be recent enough, namely:
>     autoconf >= 2.65
>     blah     >= blah
>
>   If your system has older versions, we can build them for you,
>   but you are strongly encouraged to update your system instead!
>
Do you know the minimum versions of the tools required or are the
versions in the TODO correct? Should I be building the minimum versions,
or is it ok just to build the latest ones?

> Could you please address the few remaining issues?
> Otherwise, looks good! :-)
>
No problem! It seems fairly simple to add the other 3 tools into this
patch as well, or would you rather they were all separate patches?

When I submit further versions of this patch should I also include the
"Change overide bin dir" patch (is it even possible to exclude it with
mercurial)? I don't like spamming the list with duplicate patches, but
this patch doesn't work without the "Change overide bin dir" patch.

Regards,

Richard Strand

--
For unsubscribe information see http://sourceware.org/lists.html#faq

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH 2 of 2] companion_tools/autoconf: add autoconf tool
  2010-01-11 19:57     ` Richard Strand
@ 2010-01-11 20:42       ` Richard Strand
  2010-01-11 21:04         ` Yann E. MORIN
  2010-01-11 20:44       ` Yann E. MORIN
  1 sibling, 1 reply; 11+ messages in thread
From: Richard Strand @ 2010-01-11 20:42 UTC (permalink / raw)
  To: Yann E. MORIN; +Cc: crossgcc

Richard Strand wrote:
> Yann E. MORIN wrote:
>   
>>> +    mkdir -p "${CT_BUILD_DIR}/build-autoconf"
>>> +    CT_Pushd "${CT_BUILD_DIR}/build-autoconf"
>>> +    CT_DoExecLog ALL ${CONFIG_SHELL} \
>>>
>>>       
>> Directly call ./configure, do not use CT_CONFIG_SHELL. It's the
>> responsibility of ./configure to use CONFIG_SHELL (note there's
>> no leading CT_) internally. CONFIG_SHELL is correctly set and
>> exported.
>>
>>     
>
> I know this is how it is supposed to work, but CONFIG_SHELL actually
> seems to cause problems on my system.
> I am using Ubuntu 9.04 where /bin/sh points to dash and SHELL=/bin/bash.
> When CONFIG_SHELL=/bin/bash then autoconf configure fails on my system
> with the error "configure: error: no acceptable m4 could be found in
> $PATH.". When CONFIG_SHELL is not set, or configure is explicitly called
> with bash then this problem goes away!
>
> I don't experience this issue when building any of the other packages in
> crosstool-ng. :(
>
> I have attached a text file with output from my shell with an example of
> what happens.
>   
I'm not sure if this is relevant but the autoconf documentation seems to 
suggest running /bin/bash ./configure to insure the same shell is used 
everywhere: 
http://www.gnu.org/software/autoconf/manual/autoconf.html#CONFIG_005fSHELL

Regards,

Richard Strand

--
For unsubscribe information see http://sourceware.org/lists.html#faq

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH 2 of 2] companion_tools/autoconf: add autoconf tool
  2010-01-11 19:57     ` Richard Strand
  2010-01-11 20:42       ` Richard Strand
@ 2010-01-11 20:44       ` Yann E. MORIN
  1 sibling, 0 replies; 11+ messages in thread
From: Yann E. MORIN @ 2010-01-11 20:44 UTC (permalink / raw)
  To: Richard Strand; +Cc: crossgcc

Richard, All,

On Monday 11 January 2010 20:57:19 Richard Strand wrote:
> Yann E. MORIN wrote:
> > Directly call ./configure, do not use CT_CONFIG_SHELL. It's the
> > responsibility of ./configure to use CONFIG_SHELL (note there's
> > no leading CT_) internally. CONFIG_SHELL is correctly set and
> > exported.
> I know this is how it is supposed to work, but CONFIG_SHELL actually 
> seems to cause problems on my system.
> I am using Ubuntu 9.04 where /bin/sh points to dash and SHELL=/bin/bash. 
> When CONFIG_SHELL=/bin/bash then autoconf configure fails on my system 
> with the error "configure: error: no acceptable m4 could be found in 
> $PATH.". When CONFIG_SHELL is not set, or configure is explicitly called 
> with bash then this problem goes away!

OK. After all, we're not going to do heavy maintenace on those tools, so
it's a minor issue. But, please add a few lines commenting why you do it,
so it does not get tossed away in the future.

Regards,
Yann E. MORIN.

-- 
.-----------------.--------------------.------------------.--------------------.
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___               |
| +33 223 225 172 `------------.-------:  X  AGAINST      |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
`------------------------------^-------^------------------^--------------------'



--
For unsubscribe information see http://sourceware.org/lists.html#faq

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH 2 of 2] companion_tools/autoconf: add autoconf tool
  2010-01-11 20:20     ` Richard Strand
@ 2010-01-11 20:57       ` Yann E. MORIN
  0 siblings, 0 replies; 11+ messages in thread
From: Yann E. MORIN @ 2010-01-11 20:57 UTC (permalink / raw)
  To: Richard Strand; +Cc: crossgcc

Richard, All,

On Monday 11 January 2010 21:20:03 Richard Strand wrote:
> Yann E. MORIN wrote:
> > OK, now what about this help text and prompt:
> >
> > comment "READ HELP before you say 'Y' below !!!"
> > prompt "Build some companion tools"
> > help
> >   Crosstool-NG relies on some external tools to be recent enough, namely:
> >     autoconf >= 2.65
> >     blah     >= blah

Of course, only autoconf should appear initially (see below); then as you
send patches adding the next tools, update the list accordingly.

> >   If your system has older versions, we can build them for you,
> >   but you are strongly encouraged to update your system instead!
> Do you know the minimum versions of the tools required or are the
> versions in the TODO correct? Should I be building the minimum versions,
> or is it ok just to build the latest ones?

The versions in the TODO are the strictly required versions, and have been
validated (sort of). So stick with those versions.

> No problem! It seems fairly simple to add the other 3 tools into this
> patch as well, or would you rather they were all separate patches?
> When I submit further versions of this patch should I also include the
> "Change overide bin dir" patch

First patch with the bin-override.
Second patch with the infrastuture and autoconf (as you did so far).
Then one patch for each other tool.

> (is it even possible to exclude it with 
> mercurial)?

Yes. If you are using mqueue, then you can "guard" patches. I have never
played with that, however.

If you're not using mqueue, then you could use email -r rev1:rev2 to send
all changesets from revision rev1 to revision rev2 (both inclusive), which
you can also do with mqueu, btw).

But please send all patches, so we have a correct sequence to apply.

> I don't like spamming the list with duplicate patches, but 
> this patch doesn't work without the "Change overide bin dir" patch.

Don't worry, the round-trips needed to review patches are not regarded as
spamming! :-) If we did in fact have, say, 10 or more in a 1-hour time,
then it could have been. But we'd have gone private long before that! :-)

Regards,
Yann E. MORIN.

-- 
.-----------------.--------------------.------------------.--------------------.
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___               |
| +33 223 225 172 `------------.-------:  X  AGAINST      |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
`------------------------------^-------^------------------^--------------------'



--
For unsubscribe information see http://sourceware.org/lists.html#faq

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH 2 of 2] companion_tools/autoconf: add autoconf tool
  2010-01-11 20:42       ` Richard Strand
@ 2010-01-11 21:04         ` Yann E. MORIN
  0 siblings, 0 replies; 11+ messages in thread
From: Yann E. MORIN @ 2010-01-11 21:04 UTC (permalink / raw)
  To: crossgcc; +Cc: Richard Strand

Richard, All,

On Monday 11 January 2010 21:41:41 Richard Strand wrote:
> Richard Strand wrote:
> > Yann E. MORIN wrote:
> >> Directly call ./configure, do not use CT_CONFIG_SHELL. It's the
> >> responsibility of ./configure to use CONFIG_SHELL (note there's
> >> no leading CT_) internally. CONFIG_SHELL is correctly set and
> >> exported.
[--SNIP--]
> I'm not sure if this is relevant but the autoconf documentation seems to 
> suggest running /bin/bash ./configure to insure the same shell is used 
> everywhere: 
> http://www.gnu.org/software/autoconf/manual/autoconf.html#CONFIG_005fSHELL

Ah, good to know! Thanks!

Regards,
Yann E. MORIN.

-- 
.-----------------.--------------------.------------------.--------------------.
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___               |
| +33 223 225 172 `------------.-------:  X  AGAINST      |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
`------------------------------^-------^------------------^--------------------'



--
For unsubscribe information see http://sourceware.org/lists.html#faq

^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2010-01-11 21:04 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-01-11 13:58 [PATCH 0 of 2] Add autoconf as a companion tool - 2nd rev Richard Strand
2010-01-11 13:58 ` [PATCH 2 of 2] companion_tools/autoconf: add autoconf tool Richard Strand
2010-01-11 18:48   ` Yann E. MORIN
2010-01-11 19:57     ` Richard Strand
2010-01-11 20:42       ` Richard Strand
2010-01-11 21:04         ` Yann E. MORIN
2010-01-11 20:44       ` Yann E. MORIN
2010-01-11 20:20     ` Richard Strand
2010-01-11 20:57       ` Yann E. MORIN
2010-01-11 13:58 ` [PATCH 1 of 2] scripts/crosstool-ng: Change overide bin dir Richard Strand
2010-01-11 18:34   ` Yann E. MORIN

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).