This is the mail archive of the crossgcc@sourceware.org mailing list for the crossgcc project.
See the CrossGCC FAQ for lots more information.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
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
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |