Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 344535 - dev-embedded/sdcc-3.0.0: Major version bump, ebuild attached.
Summary: dev-embedded/sdcc-3.0.0: Major version bump, ebuild attached.
Status: RESOLVED DUPLICATE of bug 553754
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: All Linux
: High enhancement with 1 vote (vote)
Assignee: Embedded Team (OBSOLETE)
Depends on:
Reported: 2010-11-07 16:52 UTC by Andrew Ray
Modified: 2015-07-13 07:30 UTC (History)
8 users (show)

See Also:
Package list:
Runtime testing required: ---

dev-embedded/sdcc-3.0.0.ebuild (sdcc-3.0.0.ebuild,2.71 KB, text/plain)
2010-11-07 16:54 UTC, Andrew Ray
sdcc-3.0.0-as-needed.patch (sdcc-3.0.0-as-needed.patch,2.77 KB, patch)
2010-11-17 20:24 UTC, Peter Volkov (RETIRED)
Details | Diff
sdcc-3.1.0.ebuild (sdcc-3.1.0.ebuild,2.29 KB, text/plain)
2012-03-14 14:46 UTC, Anton Kochkov
Patch for sdcc-3.1.0.ebuild (sdcc-3.1.0_ebuid.patch,993 bytes, patch)
2012-03-14 14:53 UTC, Anton Kochkov
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Andrew Ray 2010-11-07 16:52:24 UTC
I modified the 2.9.0 ebuild to remove patches which no longer seemed to work, and also some code for removing documentation, since the --disable-doc configure flag would seem to take care of that.

I added package specific USE flags for each port supported by SDCC as well as flags for ucsim and device-lib.  All ports and ucsim are disabled by default, since most users would only be compiling for one or two architectures, so building all 8 or so is wasteful, as well as building ucsim by default, which is only for the 8051 architecture.

A post installation message warning users that they need to enable the ports they want is added.

I have only tested it for the case of the pic and pic16 ports and doc, for which the ebuild works, although I noticed a lot of "scanelf: Invalid ar entry" lines which didn't seem to stop the final install.

Reproducible: Always
Comment 1 Andrew Ray 2010-11-07 16:54:06 UTC
Created attachment 253539 [details]

Ebuild for sdcc-3.0.0
Comment 2 Peter Volkov (RETIRED) gentoo-dev 2010-11-17 20:24:08 UTC
Created attachment 254683 [details, diff]

I needed this patch to build with --as-needed.
Comment 3 Daniel M. Weeks 2011-12-05 06:37:34 UTC
Just a note that as of Nov 27th there is a newer version: 3.1.0. I would recommend moving ahead to that version as it includes many useful improvements.
Comment 4 Daniel M. Weeks 2011-12-14 03:29:25 UTC
I renamed the attached ebuild for 3.1.0 and added use flags for the new r2k and z180 ports present in that version.

It builds in the following configuration: USE="boehm-gc device-lib pic16 avr -doc -ds390 -ds400 -gbz80 -hc08 -mcs51 -pic -r2k -ucsim -xa51 -z180 -z80"

The one thing I've noticed so far is that when device-lib is enabled, a bunch of extra directories for unselected architectures are created. It looks like most are empty and I'm sure this is an upstream issue with the makefile.

I will do more extensive testing later and post an ebuild when I'm done.
Comment 5 SpanKY gentoo-dev 2012-02-28 06:17:17 UTC
Comment on attachment 253539 [details]

always post diffs, not entire files

considering sdcc doesn't take that long to build all targets, it doesn't make sense to default them all off.
Comment 6 Anton Kochkov 2012-03-13 03:06:29 UTC
sdcc-3.1.0 is out :

SDCC 3.1.0 Feature List:

    include/pic, non-free/include/pic, lib/pic, non-free/lib/pic renamed to */pic14
    implemented --fomit-frame-pointer for mcs51
    support for use of sdcc in z88dk (--reserve-regs-iy and --no-optsdcc-in-asm options; smallc calling convention)
    new register allocator in the z80 and gbz80 ports (optimal when using --opt-code-size and a sufficiently high value for --max-allocs-per-node for the z80 port)
    C99 designated initializers
    added strxfrm() and strcoll() functions; strerror() is the only string handling function still missing
    added support for pic18f2xk22/pic18f4xk22 family (requires gputils > 0.14.0 and --enable-new-pics configure flag)
    added support for enhanced core pic14 devices (requires gputils > 0.14.0 and --enable-new-pics configure flag)
    setjmp() / longjmp() for the z80 port
    _Bool / bool for the hc08, pic16 and pic14 ports
    sdcpp synchronized with GNU cpp 4.6.1
    z180 port
    very basic (no integer constants, multiplication, division, shifts or use as return value) support for data types long long, unsigned long long, int_fast64_t, int_least64_t, int64_t, uint_fast64_t, uint_least64_t, uint64_t in the z80, z180, r2k and gbz80 ports
    r2k port for the Rabbit 2000 and Rabbit 3000
Comment 7 Anton Kochkov 2012-03-14 14:46:17 UTC
Created attachment 305313 [details]

Most patches unneeded here
Tested on x86 hardened gentoo
Comment 8 Anton Kochkov 2012-03-14 14:53:41 UTC
Created attachment 305315 [details, diff]
Patch for sdcc-3.1.0.ebuild

Sorry, attached diffs instead of ebuild
Comment 9 jannis 2012-10-16 08:32:48 UTC
Just FYI: sdcc 3.2.0 has been released on July 9th, 2012. I won't post the changes from 3.1.0 since they are on their page. I didn't test any ebuild though
Comment 10 jannis 2015-06-01 20:16:36 UTC
see also Bug 456828
Comment 11 SpanKY gentoo-dev 2015-07-13 07:30:27 UTC
if something is missing from the latest version, please file a new bug for each specific piece

*** This bug has been marked as a duplicate of bug 553754 ***