Summary: | [New Port] devel/go-hashicorp-logutils | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Product: | Ports & Packages | Reporter: | Thomas Bartelmess <thomas> | ||||||||
Component: | Individual Port(s) | Assignee: | Carlo Strub <cs> | ||||||||
Status: | Closed FIXED | ||||||||||
Severity: | Affects Many People | CC: | cs, jlaffaye, marino | ||||||||
Priority: | --- | ||||||||||
Version: | Latest | ||||||||||
Hardware: | Any | ||||||||||
OS: | Any | ||||||||||
Bug Depends on: | |||||||||||
Bug Blocks: | 192937 | ||||||||||
Attachments: |
|
Created attachment 146208 [details]
portlint output
Created attachment 146209 [details]
Shar archive
1) you can just past portlint output in comment, we don't need attachment for that 2) when you attach a shar, set mime = text/plain 3) You tabbed too much, everything except PORTVERSION 4) you did this again: X.include <bsd.port.pre.mk> X.include "${PORTSDIR}/lang/go/files/bsd.go.mk" X.include <bsd.port.post.mk> 5) see this? X@dirrmtry %%GO_SRCDIR%%/%%GO_PKGNAME%% X@dirrmtry %%GO_SRCDIR%%/github.com/hashicorp X@dirrmtry %%GO_SRCDIR%%/github.com X@dirrmtry %%GO_SRCDIR%% X@dirrmtry %%GO_LIBDIR%%/github.com/hashicorp X@dirrmtry %%GO_LIBDIR%%/github.com X@dirrmtry %%GO_LIBDIR%% X@dirrmtry share/go/pkg X@dirrmtry share/go I think only the first one is needed; the rest probably belong to go. And the first one should be @dirrm, not @dirrmtry. Never use @dirrmtry if @dirrm is guaranteed to work. Please update the shar. For me it seems like bsd.port.pre.mk has to be included before bsd.go.mk If it's not included, I am getting an error, because the $ARCH variable is not set WARNING (devel/go-hashicorp-logutils): make: "/usr/ports/devel/go-hashicorp-logutils/../../lang/go/files/bsd.go.mk" line 20: Malformed conditional (${ARCH} == "i386") WARNING (devel/go-hashicorp-logutils): make: Fatal errors encountered -- cannot continue Is there a reason why .include "${.CURDIR}/../../lang/go/files/bsd.go.mk" if preferred over .include "${PORTSDIR}/lang/go/files/bsd.go.mk" or is that just convention? I was the go-sql-driver (https://svnweb.freebsd.org/ports/head/devel/go-sql-driver/) which is also a go library. (In reply to John Marino from comment #3) > 1) you can just past portlint output in comment, we don't need attachment > for that > > 2) when you attach a shar, set mime = text/plain > > 3) You tabbed too much, everything except PORTVERSION > > 4) you did this again: > > X.include <bsd.port.pre.mk> > X.include "${PORTSDIR}/lang/go/files/bsd.go.mk" > X.include <bsd.port.post.mk> > > 5) see this? > > X@dirrmtry %%GO_SRCDIR%%/%%GO_PKGNAME%% > X@dirrmtry %%GO_SRCDIR%%/github.com/hashicorp > X@dirrmtry %%GO_SRCDIR%%/github.com > X@dirrmtry %%GO_SRCDIR%% > X@dirrmtry %%GO_LIBDIR%%/github.com/hashicorp > X@dirrmtry %%GO_LIBDIR%%/github.com > X@dirrmtry %%GO_LIBDIR%% > X@dirrmtry share/go/pkg > X@dirrmtry share/go > > I think only the first one is needed; the rest probably belong to go. And > the first one should be @dirrm, not @dirrmtry. Never use @dirrmtry if > @dirrm is guaranteed to work. > > Please update the shar. (In reply to Thomas Bartelmess from comment #4) > For me it seems like > bsd.port.pre.mk has to be included before bsd.go.mk > If it's not included, I am getting an error, because the $ARCH variable is > not set > > WARNING (devel/go-hashicorp-logutils): make: > "/usr/ports/devel/go-hashicorp-logutils/../../lang/go/files/bsd.go.mk" line > 20: Malformed conditional (${ARCH} == "i386") > WARNING (devel/go-hashicorp-logutils): make: Fatal errors encountered -- > cannot continue crap, bsd.go.mk is what needs it. > > > Is there a reason why > > .include "${.CURDIR}/../../lang/go/files/bsd.go.mk" > > if preferred over > .include "${PORTSDIR}/lang/go/files/bsd.go.mk" One good reason is that it eliminates the need for <pre> and <post> normally. A second reason is that the absolute path fails in some use cases, relative paths never fail. Still make this relative patch, but leave <pre>/<post> with a "#" comment saying that bsd.go.mk has $ARCH requiring <pre> inclusion first. s/relative patch/relative path/ I think the @dirrmtry %%GO_SRCDIR%%/%%GO_PKGNAME%% @dirrmtry %%GO_SRCDIR%%/github.com/hashicorp @dirrmtry %%GO_SRCDIR%%/github.com @dirrmtry %%GO_SRCDIR%% @dirrmtry %%GO_LIBDIR%%/github.com/hashicorp @dirrmtry %%GO_LIBDIR%%/github.com @dirrmtry %%GO_LIBDIR%% @dirrmtry share/go/pkg @dirrmtry share/go is still required since go installs the sources of the package there. (In reply to John Marino from comment #5) > (In reply to Thomas Bartelmess from comment #4) > > For me it seems like > > bsd.port.pre.mk has to be included before bsd.go.mk > > If it's not included, I am getting an error, because the $ARCH variable is > > not set > > > > WARNING (devel/go-hashicorp-logutils): make: > > "/usr/ports/devel/go-hashicorp-logutils/../../lang/go/files/bsd.go.mk" line > > 20: Malformed conditional (${ARCH} == "i386") > > WARNING (devel/go-hashicorp-logutils): make: Fatal errors encountered -- > > cannot continue > > > crap, bsd.go.mk is what needs it. > > > > > > > > Is there a reason why > > > > .include "${.CURDIR}/../../lang/go/files/bsd.go.mk" > > > > if preferred over > > .include "${PORTSDIR}/lang/go/files/bsd.go.mk" > > > One good reason is that it eliminates the need for <pre> and <post> > normally. A second reason is that the absolute path fails in some use > cases, relative paths never fail. > > Still make this relative patch, but leave <pre>/<post> with a "#" comment > saying that bsd.go.mk has $ARCH requiring <pre> inclusion first. (In reply to John Marino from comment #3) > 1) you can just past portlint output in comment, we don't need attachment > for that > > 2) when you attach a shar, set mime = text/plain > > 3) You tabbed too much, everything except PORTVERSION > > 4) you did this again: > > X.include <bsd.port.pre.mk> > X.include "${PORTSDIR}/lang/go/files/bsd.go.mk" > X.include <bsd.port.post.mk> > > 5) see this? > > X@dirrmtry %%GO_SRCDIR%%/%%GO_PKGNAME%% > X@dirrmtry %%GO_SRCDIR%%/github.com/hashicorp > X@dirrmtry %%GO_SRCDIR%%/github.com > X@dirrmtry %%GO_SRCDIR%% > X@dirrmtry %%GO_LIBDIR%%/github.com/hashicorp > X@dirrmtry %%GO_LIBDIR%%/github.com > X@dirrmtry %%GO_LIBDIR%% > X@dirrmtry share/go/pkg > X@dirrmtry share/go > > I think only the first one is needed; the rest probably belong to go. And > the first one should be @dirrm, not @dirrmtry. Never use @dirrmtry if > @dirrm is guaranteed to work. > > Please update the shar. (In reply to Thomas Bartelmess from comment #7) > I think the > @dirrmtry %%GO_SRCDIR%%/%%GO_PKGNAME%% > @dirrmtry %%GO_SRCDIR%%/github.com/hashicorp > @dirrmtry %%GO_SRCDIR%%/github.com > @dirrmtry %%GO_SRCDIR%% > @dirrmtry %%GO_LIBDIR%%/github.com/hashicorp > @dirrmtry %%GO_LIBDIR%%/github.com > @dirrmtry %%GO_LIBDIR%% > @dirrmtry share/go/pkg > @dirrmtry share/go > > is still required since go installs the sources of the package there. I have a very difficult time believing "share/go" didn't exist before this package gets installed. /me checks wow, it didn't. That's terrible. Every single go program that installs a library has to include these lines? Aren't %%GO_SRCDIR%% %%GO_LIBDIR%% share/go/pkg share/go common? I'll add the maintainer of GO in CC. If this isn't unique to this port, then I'd suggest that GO start installing these directories so it owns them. Obviously the key is whether or not these directories are common or unique. I just checked, lang/go does not create the share folder. All go packages devel/go-flags, devel/go-json-rest, devel/go-pretty, devel/go-sql-driver, devel/go-runewidth, devel/go-termbox have @dirrmtry share/go in the pkg-plist (In reply to John Marino from comment #8) > (In reply to Thomas Bartelmess from comment #7) > > I think the > > @dirrmtry %%GO_SRCDIR%%/%%GO_PKGNAME%% > > @dirrmtry %%GO_SRCDIR%%/github.com/hashicorp > > @dirrmtry %%GO_SRCDIR%%/github.com > > @dirrmtry %%GO_SRCDIR%% > > @dirrmtry %%GO_LIBDIR%%/github.com/hashicorp > > @dirrmtry %%GO_LIBDIR%%/github.com > > @dirrmtry %%GO_LIBDIR%% > > @dirrmtry share/go/pkg > > @dirrmtry share/go > > > > is still required since go installs the sources of the package there. > > > I have a very difficult time believing "share/go" didn't exist before this > package gets installed. > > /me checks > > wow, it didn't. That's terrible. Every single go program that installs a > library has to include these lines? Aren't > %%GO_SRCDIR%% > %%GO_LIBDIR%% > share/go/pkg > share/go > > common? > > I'll add the maintainer of GO in CC. If this isn't unique to this port, > then I'd suggest that GO start installing these directories so it owns them. > > Obviously the key is whether or not these directories are common or unique. (In reply to Thomas Bartelmess from comment #9) > I just checked, lang/go does not create the share folder. > > All go packages devel/go-flags, devel/go-json-rest, devel/go-pretty, > devel/go-sql-driver, devel/go-runewidth, devel/go-termbox have @dirrmtry > share/go in the pkg-plist > the question is if this is smart. if share/go is a standard directory, then probably go should be installing it and all those packages should be cleaned up before even more go packages are added. Okay, it's not this port's fault about lang/go. At this moment in time, the shar is correct. If lang/go gets a standard share/go directory (as I think it should) then all the affected ports will need to be fixed then, including this one. Moving to patch-ready status; neither of my criticisms were valid at the end. A commit references this bug: Author: cs Date: Fri Sep 5 21:15:27 UTC 2014 New revision: 367391 URL: http://svnweb.freebsd.org/changeset/ports/367391 Log: logutils is a Go package that augments the standard library "log" package to make logging a bit more modern, without fragmenting the Go ecosystem with new logging packages. PR: ports/192964 Submitted by: Thomas Bartelmess <thomas@bartelmess.io> Changes: head/devel/Makefile head/devel/go-hashicorp-logutils/ head/devel/go-hashicorp-logutils/Makefile head/devel/go-hashicorp-logutils/distinfo head/devel/go-hashicorp-logutils/pkg-descr head/devel/go-hashicorp-logutils/pkg-plist Committed. Thank you very much. A commit references this bug: Author: cs Date: Fri Sep 5 21:16:58 UTC 2014 New revision: 45550 URL: http://svnweb.freebsd.org/changeset/doc/45550 Log: Add new contributor PR: 192964 Changes: head/en_US.ISO8859-1/articles/contributors/contrib.additional.xml |
Created attachment 146207 [details] poudriere build log I am not sure if go-hachicorp-logutils is the best name for the port. The library that is called 'github.com/hashicorp/logutils', which is the convention in go. However go-github.com-hashicorp-logutils seems to long for a port name.