bugAVR C Runtime Library - Bugs: bug #35483, ./configure does not accept...

 
 

You are not allowed to post comments on this tracker with your current authentication level.

bug #35483: ./configure does not accept --target

Submitter:  Rolf Ebert <rolf_ebert>
Submitted:  Wed 08 Feb 2012 04:14:26 PM UTC
   
 
Category:  Build Infrastructure Severity:  1 - Wish
Priority:  1 - Later Item Group:  Build system
Status:  None Assigned to:  None
Percent Complete:  0% Open/Closed:  Open
Release:  1.8.0 Fixed Release:  None

Fri 29 May 2020 03:22:59 PM UTC, comment #5: 


> > for documentation on the arguments, please see:
> > https://www.gnu.org/savannah-checkouts/gnu/autoconf/manual/autoconf-2.69/html_node/Specifying-Target-Triplets.html#Specifying-Target-Triplets
>
> According to this documentation, there are up to three systems involved with cross-compilers:
>
> --build specifies the system which builds the toolchain.
>
> --host specifies the system which executes the toolchain.
>
> --target specifies the system which executes the code that the toolchain generated.
>
> Thus, when building a toolchain on a linux which is meant to run on windows to generate code for avr, the correct specification would be:


you're misreading the targets, and your subsequent characterization of them is wrong.  windows is not executing avr-libc, nor is avr-libc producing code.  hence your your --host=windows & --target=avr-libc are incorrect.

> BTW: while at it: the configure script also don't accept the target as a TRIPLET. That is: configure will fail when the target is specified as avr-XXX-YYY


exactly: libc's do not generate code.  which is why --target isn't supported.

Mike Frysinger <vapier>
Tue 26 May 2020 11:49:28 AM UTC, comment #4: 

comment #3:

> this bug is invalid and should be closed.  avr-libc is behaving correctly.


Sorry, I tend to disagree: it is NOT behaving correctly.

> for documentation on the arguments, please see:
> https://www.gnu.org/savannah-checkouts/gnu/autoconf/manual/autoconf-2.69/html_node/Specifying-Target-Triplets.html#Specifying-Target-Triplets


According to this documentation, there are up to three systems involved with cross-compilers:

--build specifies the system which builds the toolchain.

--host specifies the system which executes the toolchain.

--target specifies the system which executes the code that the toolchain generated.

Thus, when building a toolchain on a linux which is meant to run on windows to generate code for avr, the correct specification would be:

  --target=avr --build=x86_64-pc-linux-gnu --host=x86_64-pc-windows

or something. After all, the AVR is not executing the toolchain. It is executing the code which is generated by the toolchain.

The semantic of --host=avr is to build a toolchain which is running on the AVR. I doubt that anybody is really trying to do such a thing...

Every other tool in the world specifies it this way.

BTW: while at it: the configure script also don't accept the target as a TRIPLET. That is: configure will fail when the target is specified as avr-XXX-YYY

Josef Wolf <joedoe>
Sun 30 Jun 2013 06:00:26 AM UTC, comment #3: 

this bug is invalid and should be closed.  avr-libc is behaving correctly.

for documentation on the arguments, please see:
https://www.gnu.org/savannah-checkouts/gnu/autoconf/manual/autoconf-2.69/html_node/Specifying-Target-Triplets.html#Specifying-Target-Triplets

Mike Frysinger <vapier>
Fri 01 Feb 2013 08:52:24 PM UTC, comment #2: 

--host specifies the platform that runs the software, thus --target=avr would be confusing.

--host is common practice.  For example, if you cross-build libraries like GSL (so that they run on a platform fifferent to the build platform), you specify that by means of --host.

Georg-Johann Lay <gjlayde>
Wed 08 Feb 2012 10:57:15 PM UTC, comment #1: 

All that stuff still originates from Ted Roth's initial work on the
autoconf setup (back in 2004, the first revision appeared on branch
"autoconf-branch", it's r498 now after the migration to SVN).
Frankly, I've got no idea why he required this scheme, but I'm pretty
sure he's got a reason by that time. ;-)

If someone could come up with a better implementation that produces
similar results, I'm all ears.

Joerg Wunsch <joerg_wunsch>
Group administrator
Wed 08 Feb 2012 04:14:26 PM UTC, original submission:  

I didn't build avr-libc so I don't know when this (mis)feature appeared...

The top level configure script requires to spell out --host=avr. IMHO this is unfortunate for several reasons:

1) the product is called avr-libc. I wouldn't expect it to provide anything else (e.g. a libc for ARM) than a libc for avr. Nevertheless you have to type that option altough the only permitted value is 'avr*'

2) It is a library for my 'target', not for my 'host'.  The hosting machine typically is a Linux or Windows PC.  That's why I stumbled over this issue in the first place. I naivly tried "./configure --target=avr" as for binutils and gcc and it failed.  (I can vaguely imagine a logic why it is called host, but that's very counterintuitive!)

3) I had a third reason when I opened the issue but I don't remember anymore...

I propose to accept --target= as an equivalent to --host in the first step, correct the build instructions and then to deprecate --host as a target indicator (it might still be useful for an alternative name of --build in case config.guess fails to correctly detect the hosting machine)

    Rolf

Rolf Ebert <rolf_ebert>

 

(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

No files currently attached

 

Depends on the following items: None found

Items that depend on this one: None found

 

Carbon-Copy List
  • -email is unavailable- added by joedoe (Posted a comment)
  • -email is unavailable- added by vapier (Posted a comment)
  • -email is unavailable- added by gjlayde (Posted a comment)
  • -email is unavailable- added by arcanum (Updated the item)
  • -email is unavailable- added by joerg_wunsch (Posted a comment)
  • -email is unavailable- added by rolf_ebert (Submitted the item)
  •  

    Follow 2 latest changes.

    Date Changed by Updated Field Previous Value => Replaced by
    2012-11-16 arcanum Priority5 - Normal 1 - Later
    2012-02-08 joerg_wunsch Severity3 - Normal 1 - Wish

    Back to the top

    Powered by Savane 3.13-f8d8.
    Corresponding source code