public inbox for crossgcc@sourceware.org
 help / color / mirror / Atom feed
* Re: [patch 0/4] Add initial support for windows hosted canadian cross-compiler to CT-NG
       [not found] <20090610101230.342741672@gmail.com>
@ 2009-06-10 11:53 ` Yann E. MORIN
       [not found] ` <20090610113222.461816414@gmail.com>
                   ` (3 subsequent siblings)
  4 siblings, 0 replies; 7+ messages in thread
From: Yann E. MORIN @ 2009-06-10 11:53 UTC (permalink / raw)
  To: bartvdrmeulen; +Cc: crossgcc

Hello Bart!

On Wednesday 10 June 2009 12:12:30 Bart vd. Meulen wrote:
> This serie of patches contains support for building a canadian cross-compiler 
> for a windows hosted system and several generic bug fixes.

Thank you!

I've had a quick glance at them, and they all seem very good! :-)
I'll have a more thorough look tonight, when I'm back home (late in the
evening...)

Regards,
Yann E. MORIN.

-- 
.-----------------.--------------------.------------------.--------------------.
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +0/33 662376056 | Software  Designer | \ / CAMPAIGN     |  ___               |
| --==< ^_^ >==-- `------------.-------:  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] 7+ messages in thread

* Re: [patch 1/4] No need to create debugroot dir when not configured
       [not found] ` <20090610113222.461816414@gmail.com>
@ 2009-06-19 16:14   ` Yann E. MORIN
  0 siblings, 0 replies; 7+ messages in thread
From: Yann E. MORIN @ 2009-06-19 16:14 UTC (permalink / raw)
  To: bartvdrmeulen; +Cc: crossgcc

Hello Bart!

Sorry for the long delay, I've been a bit overwheled recently...

For the records, here's what's happening:
- setting up a new server
- learning Mercurial
- migrating the repos to Mercurial

So, from now on, the subversion tree is no longer evolving.
I'm commiting your changes in a Mercurial tree on my work station,
which allows me to test real-life usage of Mercurial. So, expect a
few more days before the new repository goes live (hopefully by the
end of next week).

Note however that I have a few comments about your patches, see
below, and in the following replies to the other patches.

On Wednesday 10 June 2009 12:12:31 Bart vd. Meulen wrote:
> Cosmetic fix, only create debugroot dir when option is selected
> in the configuration.

Well, the real fix is to set CT_DEBUGROOT_DIR even in the
non-systrooted case. I've applied this instead of your patch.
Thanks for spotting this, anyway!

Again, thank you very much for your contribution!

Regards,
Yann E. MORIN.

-- 
.-----------------.--------------------.------------------.--------------------.
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +0/33 662376056 | Software  Designer | \ / CAMPAIGN     |  ___               |
| --==< ^_^ >==-- `------------.-------:  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] 7+ messages in thread

* Re: [patch 2/4] Only create sym-link from sysroot/lib directory when using syslink
       [not found] ` <20090610113222.553100012@gmail.com>
@ 2009-06-19 16:15   ` Yann E. MORIN
  0 siblings, 0 replies; 7+ messages in thread
From: Yann E. MORIN @ 2009-06-19 16:15 UTC (permalink / raw)
  To: bartvdrmeulen; +Cc: crossgcc

On Wednesday 10 June 2009 12:12:32 Bart vd. Meulen wrote:
> The symbol link that is created in the sysroot directory only needs
> to be made when the cross compiler is build with the sysroot option
> 
> Signed-off-by: Bart van der Meulen <bartvdrmeulen@gmail.com>
> ---
>  scripts/crosstool-NG.sh.in |    6 ++++--
>  1 file changed, 4 insertions(+), 2 deletions(-)
> 
> Index: crosstool-ng/scripts/crosstool-NG.sh.in
> ===================================================================
> --- crosstool-ng.orig/scripts/crosstool-NG.sh.in	2009-06-08 15:29:33.000000000 +0200
> +++ crosstool-ng/scripts/crosstool-NG.sh.in	2009-06-08 15:30:15.000000000 +0200
> @@ -280,8 +280,10 @@ if [ -z "${CT_RESTART}" ]; then
>      CT_DoExecLog ALL mkdir -p "${CT_SYSROOT_DIR}/lib"
>      CT_DoExecLog ALL mkdir -p "${CT_SYSROOT_DIR}/usr/lib"
>  
> -    # Prevent gcc from installing its libraries outside of the sys-root
> -    CT_DoExecLog ALL ln -sf "./${CT_SYSROOT_DIR_PREFIX}/sys-root/lib" "${CT_PREFIX_DIR}/${CT_TARGET}/lib"
> +    if [ "${CT_USE_SYSROOT}" = "y" ]; then
> +      # Prevent gcc from installing its libraries outside of the sys-root
> +      CT_DoExecLog ALL ln -sf "./${CT_SYSROOT_DIR_PREFIX}/sys-root/lib" "${CT_PREFIX_DIR}/${CT_TARGET}/lib"
> +    fi

Applied as-is, thanks!

Regards,
Yann E. MORIN.

-- 
.-----------------.--------------------.------------------.--------------------.
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +0/33 662376056 | Software  Designer | \ / CAMPAIGN     |  ___               |
| --==< ^_^ >==-- `------------.-------:  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] 7+ messages in thread

* Re: [patch 3/4] collects the tools needed to build a crosscompiler in a seperate folder
       [not found] ` <20090610113222.717687247@gmail.com>
@ 2009-06-19 16:17   ` Yann E. MORIN
  0 siblings, 0 replies; 7+ messages in thread
From: Yann E. MORIN @ 2009-06-19 16:17 UTC (permalink / raw)
  To: bartvdrmeulen; +Cc: crossgcc

Bart,

On Wednesday 10 June 2009 12:12:33 Bart vd. Meulen wrote:
> Collect the build tools in a seperate folder in order to prevent accidental 
> calling our newly build tools.

Yes! Applied as-is, thanks!

Regards,
Yann E. MORIN.

-- 
.-----------------.--------------------.------------------.--------------------.
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +0/33 662376056 | Software  Designer | \ / CAMPAIGN     |  ___               |
| --==< ^_^ >==-- `------------.-------:  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] 7+ messages in thread

* Re: [patch 4/4] Implement canadian build option
       [not found] ` <20090610113222.856924123@gmail.com>
@ 2009-06-19 16:27   ` Yann E. MORIN
  2009-06-22 18:08     ` Bart van der Meulen
  0 siblings, 1 reply; 7+ messages in thread
From: Yann E. MORIN @ 2009-06-19 16:27 UTC (permalink / raw)
  To: bartvdrmeulen; +Cc: crossgcc

Bart,

See comments inlined below...

On Wednesday 10 June 2009 12:12:34 Bart vd. Meulen wrote:
> Add implementation for a candadian build option already
> present in crosstool in order to build a cross-compiler
> where build != host != target
> 
> The included sample uses a pre-installed mingw build-host compiler and a 
> build-target compiler (that has been build with Crosstool-ng, using the 
> i686-ntpl-linux-gnu example has basis)
> The resulting cross compiler runs on a mingw host and builds for a 
> i686-linux-gnu target.
> 
> Signed-off-by: Bart van der Meulen <bartvdrmeulen@gmail.com>
> ---
>  config/toolchain.in                          |    2 
>  samples/i686-none-linux-gnu/crosstool.config |  353 +++++++++++++++++++++++++++
>  samples/i686-none-linux-gnu/reported.by      |    3 
>  scripts/build/cc/gcc.sh                      |    8 
>  scripts/build/companion_libs/mpfr.sh         |    3 
>  scripts/crosstool-NG.sh.in                   |   17 +
>  6 files changed, 381 insertions(+), 5 deletions(-)
> 
> Index: crosstool-ng/scripts/crosstool-NG.sh.in
> ===================================================================
> --- crosstool-ng.orig/scripts/crosstool-NG.sh.in	2009-06-08 15:30:40.000000000 +0200
> +++ crosstool-ng/scripts/crosstool-NG.sh.in	2009-06-08 15:30:41.000000000 +0200
> @@ -202,8 +202,10 @@ CT_DoExecLog ALL mkdir -p "${CT_BUILD_DI
>  CT_DoExecLog ALL mkdir -p "${CT_CONFIG_DIR}"
>  CT_DoExecLog ALL mkdir -p "${CT_INSTALL_DIR}"
>  CT_DoExecLog ALL mkdir -p "${CT_PREFIX_DIR}"
> -CT_DoExecLog ALL mkdir -p "${CT_CC_CORE_STATIC_PREFIX_DIR}"
> -CT_DoExecLog ALL mkdir -p "${CT_CC_CORE_SHARED_PREFIX_DIR}"
> +if [ -z "${CT_CANADIAN}" ]; then
> +    CT_DoExecLog ALL mkdir -p "${CT_CC_CORE_STATIC_PREFIX_DIR}"
> +    CT_DoExecLog ALL mkdir -p "${CT_CC_CORE_SHARED_PREFIX_DIR}"
> +fi
>  
>  # Only create the state dir if asked for a restartable build
>  [ -n "${CT_DEBUG_CT_SAVE_STEPS}" ] && CT_DoExecLog ALL mkdir -p "${CT_STATE_DIR}"
> @@ -303,10 +305,18 @@ if [ -z "${CT_RESTART}" ]; then
>  
>      # Prepare mangling patterns to later modify BUILD and HOST (see below)
>      case "${CT_TOOLCHAIN_TYPE}" in
> +        canadian)
> +            CT_REAL_TARGET=${TARGET}

CT_REAL_TARGET is used nowhere in the code. What was it for?

> +            build_mangle="build_"
> +            host_mangle="host_"
> +            install_build_tools_for="BUILD HOST TARGET"

Yep, nice!

> +            ;;
> +

Useless empty line, doesn't mind.

>          cross)
>              CT_HOST="${CT_BUILD}"
>              build_mangle="build_"
>              host_mangle="build_"
> +            install_build_tools_for="BUILD HOST"
>              ;;
>          *)  CT_Abort "No code for '${CT_TOOLCHAIN_TYPE}' toolchain type!"
>              ;;
> @@ -334,7 +344,7 @@ if [ -z "${CT_RESTART}" ]; then
>      # cross-tools for those mangled tuples.
>      CT_DoLog DEBUG "Making build system tools available"
>      CT_DoExecLog ALL mkdir -p "${CT_PREFIX_DIR}/buildtools"
> -    for m in BUILD HOST; do
> +    for m in ${install_build_tools_for}; do
>          r="CT_REAL_${m}"
>          v="CT_${m}"
>          p="CT_${m}_PREFIX"
> @@ -402,6 +412,7 @@ if [ -z "${CT_RESTART}" ]; then
>      # so don't add those PATHs in this case...
>      case "${CT_TOOLCHAIN_TYPE}" in
>          cross)  export PATH="${CT_PREFIX_DIR}/buildtools:${CT_PREFIX_DIR}/bin:${CT_CC_CORE_SHARED_PREFIX_DIR}/bin:${CT_CC_CORE_STATIC_PREFIX_DIR}/bin:${PATH}";;
> +        canadian) export PATH="${CT_PREFIX_DIR}/buildtools:${PATH}";;

Good!

>          *)  ;;
>      esac
>  
> Index: crosstool-ng/config/toolchain.in
> ===================================================================
> --- crosstool-ng.orig/config/toolchain.in	2009-06-08 15:30:35.000000000 +0200
> +++ crosstool-ng/config/toolchain.in	2009-06-08 15:30:41.000000000 +0200
> @@ -123,7 +123,7 @@ config CROSS_NATIVE
>  
>  config CANADIAN
>      bool
> -    prompt "Canadian     (NO CODE!) (EXPERIMENTAL)"
> +    prompt "Canadian     (EXPERIMENTAL)"
>      depends on EXPERIMENTAL
>      help
>        Build a canadian-toolchain.
> Index: crosstool-ng/scripts/build/cc/gcc.sh
> ===================================================================
> --- crosstool-ng.orig/scripts/build/cc/gcc.sh	2009-06-08 15:30:35.000000000 +0200
> +++ crosstool-ng/scripts/build/cc/gcc.sh	2009-06-08 15:30:41.000000000 +0200
> @@ -45,6 +45,10 @@ do_cc_extract() {
>  #------------------------------------------------------------------------------
>  # Core gcc pass 1
>  do_cc_core_pass_1() {
> +    # If we're building a candadian compiler no use to build the CC

Typo: "canadian";
s/CC/core compiler/

> +    # core compiler, we're not using it
> +    [ -n "${CT_CANADIAN}" ] && return 0
> +
>      # If we're building for bare metal, build the static core gcc,
>      # with libgcc.
>      # In case we're not bare metal, and we're NPTL, build the static core gcc.
> @@ -58,6 +62,10 @@ do_cc_core_pass_1() {
>  
>  # Core gcc pass 2
>  do_cc_core_pass_2() {
> +    # If we're building a candadian compiler no use to build the CC

Ditto, ditto.

> +    # core compiler, we're not using it
> +    [ -n "${CT_CANADIAN}" ] && return 0
> +
>      # In case we're building for bare metal, do nothing, we already have
>      # our compiler.
>      # In case we're NPTL, build the shared core gcc and the target libgcc.
> Index: crosstool-ng/scripts/build/companion_libs/mpfr.sh
> ===================================================================
> --- crosstool-ng.orig/scripts/build/companion_libs/mpfr.sh	2009-06-08 15:30:35.000000000 +0200
> +++ crosstool-ng/scripts/build/companion_libs/mpfr.sh	2009-06-08 15:30:41.000000000 +0200
> @@ -64,7 +64,8 @@ do_mpfr() {
>      mpfr_opt=
>      # Under Cygwin, we can't build a thread-safe library
>      case "${CT_HOST}" in
> -        *-cygwin)   mpfr_opt="--disable-thread-safe";;
> +        *cygwin*)   mpfr_opt="--disable-thread-safe";;
> +        *mingw*)    mpfr_opt="--disable-thread-safe";;
>          *)          mpfr_opt="--enable-thread-safe";;
>      esac
>  

This chunk should have gone in a separate patch, to prepare for that one.
Anyway, already applied this chunk as-is.

Overall, looks good. I'l wait for your answer on CT_REAL_TARGET before
I commit.

Oh, by the way... It just occured to me that your original messages didn't
make it to the list. :-( Did you get an error message about this? If so,
what was the reason?

Regards,
Yann E. MORIN.

-- 
.-----------------.--------------------.------------------.--------------------.
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +0/33 662376056 | Software  Designer | \ / CAMPAIGN     |  ___               |
| --==< ^_^ >==-- `------------.-------:  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] 7+ messages in thread

* Re: [patch 4/4] Implement canadian build option
  2009-06-19 16:27   ` [patch 4/4] Implement canadian build option Yann E. MORIN
@ 2009-06-22 18:08     ` Bart van der Meulen
  2009-06-24 13:06       ` Bart van der Meulen
  0 siblings, 1 reply; 7+ messages in thread
From: Bart van der Meulen @ 2009-06-22 18:08 UTC (permalink / raw)
  To: Yann E. MORIN; +Cc: crossgcc

Hi Yann,

Thanks for the comment,

2009/6/19 Yann E. MORIN <yann.morin.1998@anciens.enib.fr>:
"${CT_STATE_DIR}"
>> @@ -303,10 +305,18 @@ if [ -z "${CT_RESTART}" ]; then
>>
>>      # Prepare mangling patterns to later modify BUILD and HOST (see below)
>>      case "${CT_TOOLCHAIN_TYPE}" in
>> +        canadian)
>> +            CT_REAL_TARGET=${TARGET}
>
> CT_REAL_TARGET is used nowhere in the code. What was it for?
>

I'm not sure why i needed CT_REAL_TARGET in the first place I'll have
too look into it

..
>
> Overall, looks good. I'l wait for your answer on CT_REAL_TARGET before
> I commit.
>
> Oh, by the way... It just occured to me that your original messages didn't
> make it to the list. :-( Did you get an error message about this? If so,
> what was the reason?
>
> Regards,
> Yann E. MORIN.
>
> --

I never got an error message about my original post.
I know I send that one via another mail host, maybe it got blocked by
the mailing list because the sender address was not the same as the
mailhost.


Bart

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

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

* Re: [patch 4/4] Implement canadian build option
  2009-06-22 18:08     ` Bart van der Meulen
@ 2009-06-24 13:06       ` Bart van der Meulen
  0 siblings, 0 replies; 7+ messages in thread
From: Bart van der Meulen @ 2009-06-24 13:06 UTC (permalink / raw)
  To: Yann E. MORIN; +Cc: crossgcc

2009/6/22 Bart van der Meulen <bartvdrmeulen@gmail.com>:
> Hi Yann,
>
> Thanks for the comment,
>
> 2009/6/19 Yann E. MORIN <yann.morin.1998@anciens.enib.fr>:
> "${CT_STATE_DIR}"
>>> @@ -303,10 +305,18 @@ if [ -z "${CT_RESTART}" ]; then
>>>
>>>      # Prepare mangling patterns to later modify BUILD and HOST (see below)
>>>      case "${CT_TOOLCHAIN_TYPE}" in
>>> +        canadian)
>>> +            CT_REAL_TARGET=${TARGET}
>>
>> CT_REAL_TARGET is used nowhere in the code. What was it for?
>>
>
> I'm not sure why i needed CT_REAL_TARGET in the first place I'll have
> too look into it
>

CT_REAL_TARGET is needed as define for the loop that detect and
installs the build tools. This define is used to detect the correct
versions of the tools when no prefix is specified in the configuration
There was however an error in the assignment instead of ${TARGET} it
should have been ${CT_TARGET},

Bart
>

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

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

end of thread, other threads:[~2009-06-24 13:06 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <20090610101230.342741672@gmail.com>
2009-06-10 11:53 ` [patch 0/4] Add initial support for windows hosted canadian cross-compiler to CT-NG Yann E. MORIN
     [not found] ` <20090610113222.461816414@gmail.com>
2009-06-19 16:14   ` [patch 1/4] No need to create debugroot dir when not configured Yann E. MORIN
     [not found] ` <20090610113222.553100012@gmail.com>
2009-06-19 16:15   ` [patch 2/4] Only create sym-link from sysroot/lib directory when using syslink Yann E. MORIN
     [not found] ` <20090610113222.717687247@gmail.com>
2009-06-19 16:17   ` [patch 3/4] collects the tools needed to build a crosscompiler in a seperate folder Yann E. MORIN
     [not found] ` <20090610113222.856924123@gmail.com>
2009-06-19 16:27   ` [patch 4/4] Implement canadian build option Yann E. MORIN
2009-06-22 18:08     ` Bart van der Meulen
2009-06-24 13:06       ` Bart van der Meulen

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).