Opened 13 years ago

Closed 7 years ago

#30767 closed submission (wontfix)

new port : lm32-rtems-gcc

Reported by: yann.sionneau@… Owned by: macports-tickets@…
Priority: Normal Milestone:
Component: ports Version: 2.0.1
Keywords: Cc: raimue (Rainer Müller)
Port: lm32-rtems-gcc

Description

This is a Portfile which introduces gcc for the lm32 architecture for the RTOS RTEMS, using newlib as libc.

This Portfile makes it possible for anyone to produce code to be executed on the Milkymist plateforme.

Binaries produced by this gcc can be executed either on real hardware (Milkymist One board) or on Qemu (since latest release 0.15.0 now supports officially lm32 and Milkymist).

There is a patch (gcc-ppl-version.patch) to put in lm32-rtems-gcc/files/ attached to this ticket too.

Attachments (4)

gcc-ppl-version.patch (406 bytes) - added by yann.sionneau@… 13 years ago.
patch to check for the right ppl version in gcc configure script
Portfile (10.9 KB) - added by yann.sionneau@… 13 years ago.
Portfile for lm32-rtems-gcc
gcc-lm32-multilib.patch (320 bytes) - added by yann.sionneau@… 13 years ago.
patch to add lm32 CPU optimizations as multilibs
Portfile.2 (11.9 KB) - added by raimue (Rainer Müller) 13 years ago.

Download all attachments as: .zip

Change History (8)

Changed 13 years ago by yann.sionneau@…

Attachment: gcc-ppl-version.patch added

patch to check for the right ppl version in gcc configure script

Changed 13 years ago by yann.sionneau@…

Attachment: Portfile added

Portfile for lm32-rtems-gcc

Changed 13 years ago by yann.sionneau@…

Attachment: gcc-lm32-multilib.patch added

patch to add lm32 CPU optimizations as multilibs

comment:1 Changed 13 years ago by raimue (Rainer Müller)

Cc: raimue@… added

I recently added a crossgcc port group in order to unify any cross development toolchains.

comment:2 in reply to:  1 Changed 13 years ago by yann.sionneau@…

Replying to raimue@…:

I recently added a crossgcc port group in order to unify any cross development toolchains.

Thanks a lot for your feed back on my submission.

I am in the process of re-writting the Portfile to make use of your crossgcc PortGroup.

I have a few problems though, maybe you can help me to sort this out :

  • I need to generate lm32-rtems4.11-gcc binary and not lm32-rtems-gcc. So I need --target=lm32-rtems4.11-gcc passed as configure.args
  • I need AR, STRIP, OBJDUMP etc to be like lm32-rtems4.11-TOOLNAME in environment variables, as in my Portfile.
  • I need to desactivate g++ building, I only want gcc to be built. (The reason is pretty simple : g++ is broken for lm32 architecture)
  • I made an attempt of Portfile using your crossgcc PortGroup, here is what I get :

Error: reinplace: couldn't read file "/opt/local/var/macports/build/_Users_fallen_ports_cross_lm32-rtems-gcc/lm32-rtems-gcc/work/gcc-4.5.2/libquadmath/libquadmath.info": no such file or directory

This error comes from the line 100 "libquadmath libquadmath/Makefile.in libquadmath info" of your PortGroup I think. Indeed libquadmath does not exist in gcc-4.5.2

I am using gcc-4.5.2 because lm32 support is broken on newer gcc releases (and in gcc HEAD as well), it is in the process of being fixed, but it may take some time.

Here is what I came up with so far : http://pastebin.com/4mJ9Nqc7

Any feed back is greatly appreciated :)

Thanks !

comment:3 Changed 13 years ago by raimue (Rainer Müller)

Thanks for your feedback on the crossgcc port group! I will try to find solutions for these problems and I am pretty sure we can work this out, but will take some time - at least for me at the moment.

To avoid any longer delay, here is an update of the original submitted Portfile with small changes:

  • Fix whitespace, the indentation using tabs/spaces wasn't consistent
  • Fix fetch, tags in distfiles were wrong
  • extract.only was specified twice
  • use_parallel_build yes is the default already
  • Make use of system -W

Livecheck should probably be pointed to a RTEMS specific release, not GCC core from FSF.

Changed 13 years ago by raimue (Rainer Müller)

Attachment: Portfile.2 added

comment:4 Changed 7 years ago by raimue (Rainer Müller)

Resolution: wontfix
Status: newclosed

I do not think there is still value in putting a lm32-rtems-gcc at version 4.5.2 into the ports tree. Therefore I am closing this ticket. If anyone wants to continue the work on this, please request a reopen on this ticket, open a new one, or submit a pull request on GitHub.

Note: See TracTickets for help on using tickets.