Page MenuHomeFreeBSD

devel/avr-gcc: Update to 10.2.0
ClosedPublic

Authored by 0mp on Apr 28 2021, 10:17 AM.
Tags
None
Referenced Files
Unknown Object (File)
Mon, Mar 25, 3:20 AM
Unknown Object (File)
Mon, Mar 25, 12:35 AM
Unknown Object (File)
Tue, Mar 12, 3:18 AM
Unknown Object (File)
Feb 26 2024, 12:16 PM
Unknown Object (File)
Feb 24 2024, 5:31 AM
Unknown Object (File)
Feb 16 2024, 12:25 AM
Unknown Object (File)
Feb 6 2024, 4:33 AM
Unknown Object (File)
Jan 29 2024, 11:48 PM
Subscribers

Diff Detail

Repository
rP FreeBSD ports repository
Lint
No Lint Coverage
Unit
No Test Coverage
Build Status
Buildable 38923
Build 35812: arc lint + arc unit

Event Timeline

0mp requested review of this revision.Apr 28 2021, 10:17 AM

The patch to add the --without-zstd option is rejected here (SVN r568912). The reason is the patch assumes the individual configure options are each on a single individual line in the Makefile, yet everything except --with-isl used to be on a just one line before.

My version of pkg-static does not seem to replace %%VERSION%%:
pkg-static: Unable to access file /usr/ports/devel/avr-gcc/work/stage/usr/local/lib/gcc/avr/%%VERSION%%/plugin/include/wide-int-print.h:No such file or directory
and so on.

This comment was removed by joerg.

After reading
https://docs.freebsd.org/en_US.ISO8859-1/books/porters-handbook/plist.html
it seems, the following addition to Makefile does the trick:

VERSION=        ${PORTVERSION}
PLIST_SUB=      VERSION=${VERSION}

However, I also notice a slight increase in the resulting binary size:

$ avr-size *elf build-gcc9/*elf
   text    data     bss     dec     hex filename
  14018     938      83   15039    3abf cg3000.elf
  13900     938      83   14921    3a49 build-gcc9/cg3000.elf

Not representative, just running both compiler versions on my current AVR project.

joerg requested changes to this revision.May 3 2021, 7:58 PM

Are there any comments about the patches that don't work straight out of the box for me?
Do you want me to commit it including my modifications?

This revision now requires changes to proceed.May 3 2021, 7:58 PM

Are there any comments about the patches that don't work straight out of the box for me?
Do you want me to commit it including my modifications?

I can test the current proposed version if it would be helpful but I'm not sure what patches you're referring to.

joerg added a subscriber: leres.

I uploaded my diff against the current SVN as D30095 and added you as a reviewer, Craig @leres

The patch to add the --without-zstd option is rejected here (SVN r568912). The reason is the patch assumes the individual configure options are each on a single individual line in the Makefile, yet everything except --with-isl used to be on a just one line before.

This is how portfmt formats makefiles. It seems to be more and more popular and is documented in the porter's handbook.

BTW, your Subversion checkout seems to be out-dated. The Git repository contains a couple additional commits now: https://cgit.freebsd.org/ports/log/devel/avr-gcc/Makefile

My version of pkg-static does not seem to replace %%VERSION%%:
pkg-static: Unable to access file /usr/ports/devel/avr-gcc/work/stage/usr/local/lib/gcc/avr/%%VERSION%%/plugin/include/wide-int-print.h:No such file or directory
and so on.

Hmmm, I don't know why you experience this behavior. I've tested this patch many times both in poudriere and by building the port manually and running qa targets manually. Perhaps I missed something..

This is how portfmt formats makefiles. It seems to be more and more popular and is documented in the porter's handbook.

I don't mind using that kind of formatting – but it's not the way the *current* port is formatted, thus your patch failed.

BTW, your Subversion checkout seems to be out-dated.

I ran a "svn update" before – no, it's not.

The Git repository contains a couple additional commits now: https://cgit.freebsd.org/ports/log/devel/avr-gcc/Makefile

Yes, the Git repo, but not the SVN one.

So question is, what's the definitive ports tree these days?

In D30022#676443, @0mp wrote:

Hmmm, I don't know why you experience this behavior. I've tested this patch many times both in poudriere and by building the port manually and running qa targets manually. Perhaps I missed something..

(It looks like I started to post a comment but never actually submitted... I also cannot apply the patch.)

In my case I have two ports trees, one is a shallow checkout created by poudriere:

zinc 201 % git remote -v
origin https://git.FreeBSD.org/ports.git (fetch)
origin https://git.FreeBSD.org/ports.git (push)
zinc 202 % git log --max-count 1 --pretty=fuller | egrep ^CommitDate
CommitDate: Wed May 5 09:46:40 2021 -0700

And the other is the one I use to commit changes:

zinc 203 % git remote -v
origin ssh://git@gitrepo.freebsd.org/ports.git (fetch)
origin git@gitrepo.freebsd.org:ports.git (push)
zinc 204 % git log --max-count 1 --pretty=fuller | egrep ^CommitDate
CommitDate: Wed May 5 11:39:35 2021 +0800

Both have the same version of devel/avr-gcc. If I download a diff using the "Download Raw Diff" link above the patch fails.

I had a problem in the past where I accidentally interrupted a git update and from then on some parts of the tree would never update. In the end I trashed and recreated the tree.

BTW, I believe it's more common for the diff to be relative to /usr/ports

BTW, your Subversion checkout seems to be out-dated.

I ran a "svn update" before – no, it's not.

The Git repository contains a couple additional commits now: https://cgit.freebsd.org/ports/log/devel/avr-gcc/Makefile

Yes, the Git repo, but not the SVN one.

So question is, what's the definitive ports tree these days?

The definitive repo is the Git one. The ports tree in Subversion is no longer updated. The last update to the Subversion head branch was 5 weeks ago: https://svnweb.freebsd.org/ports/

In D30022#676443, @0mp wrote:

Hmmm, I don't know why you experience this behavior. I've tested this patch many times both in poudriere and by building the port manually and running qa targets manually. Perhaps I missed something..

(It looks like I started to post a comment but never actually submitted... I also cannot apply the patch.)

Hmmm, the diff applies cleanly for me:

git checkout main
fetch -o /tmp/p "https://reviews.freebsd.org/D30022/diff"
patch < /tmp/p

Could you paste the error messages you get when the patch fails to apply? Maybe we can figure out what's the reason of the failure.

Cheers, thanks a lot for taking time to review this revision :)

zinc 295 # pwd
/usr/ports/devel/avr-gcc
zinc 296 # git status .
On branch main
Your branch is up to date with 'origin/main'.

nothing to commit, working tree clean
zinc 298 # fetch -o /tmp/p https://reviews.freebsd.org/D30022/diff
fetch: https://reviews.freebsd.org/D30022/diff: size of remote file is not known
/tmp/p 84 kB 609 kBps 00s
zinc 299 # patch < /tmp/p
Hmm... Looks like a unified diff to me...

The text leading up to this was:

Index: devel/avr-gcc/Makefile
===================================================================
--- devel/avr-gcc/Makefile
+++ devel/avr-gcc/Makefile

Patching file Makefile using Plan A...
Hunk #1 succeeded at 1.
Hunk #2 succeeded at 33.
Hunk #3 succeeded at 72.
Hmm... The next patch looks like a unified diff to me...

The text leading up to this was:

Index: devel/avr-gcc/distinfo
===================================================================
--- devel/avr-gcc/distinfo
+++ devel/avr-gcc/distinfo

Patching file distinfo using Plan A...
Hunk #1 succeeded at 1.
Hmm... The next patch looks like a unified diff to me...

The text leading up to this was:

Index: devel/avr-gcc/pkg-plist
===================================================================
--- devel/avr-gcc/pkg-plist
+++ devel/avr-gcc/pkg-plist

Patching file pkg-plist using Plan A...
Hunk #1 succeeded at 2.
done

I also uploaded a copy of Makefile.orig

The definitive repo is the Git one.

OK, I missed that transition (just read it in my mail backlog).

In that case, I'll first update my ports tree working copy. (Maybe the missing %%VERSION%% replacement gets also resolved by that?)

The definitive repo is the Git one.

In that case, I'll first update my ports tree working copy. (Maybe the missing %%VERSION%% replacement gets also resolved by that?)

Tree updated, and yes, %%VERSION%% now also works as expected.

So I'm fine with your original patch then.

Btw., if you're doing some blanket-permission updates to many ports (option re-arranging), as a port maintainer I would have appreciated to get a "head's up" mail about it.

This revision is now accepted and ready to land.May 6 2021, 5:16 AM
This revision was automatically updated to reflect the committed changes.