Skip to content

Commit

Permalink
golang: fix package clean / autoremove, add output whitespace
Browse files Browse the repository at this point in the history
go 1.11 added modules, which are cached locally. The go developers have
decided to make this cache read-only (golang/go#27455), which causes
problems with package clean / autoremove (openwrt#7635).

This adds a call to clear this cache right after building, as currently
there is no easy way to hook into autoremove (it may be possible to hook
into package clean).

This also adds whitespace (blank lines) to certain places in make
output, to aid debugging.

Signed-off-by: Jeffery To <[email protected]>
  • Loading branch information
jefferyto authored and thiagoricciardi committed Apr 3, 2019
1 parent 44f5e82 commit 07559bf
Showing 1 changed file with 13 additions and 0 deletions.
13 changes: 13 additions & 0 deletions lang/golang/golang-package.mk
Original file line number Diff line number Diff line change
Expand Up @@ -171,6 +171,7 @@ define GoPackage/Build/Configure
mkdir -p $$$$(dirname $$$$dest) ; \
$(CP) $$$$file $$$$dest ; \
done ; \
echo ; \
\
link_contents() { \
local src=$$$$1 ; \
Expand Down Expand Up @@ -209,6 +210,7 @@ define GoPackage/Build/Configure
else \
echo "Not building binaries, skipping symlinks" ; \
fi ; \
echo ; \
)
endef

Expand All @@ -224,16 +226,21 @@ define GoPackage/Build/Compile
CXX=$(TARGET_CXX) \
$(call GoPackage/Environment) ; \
\
echo "Finding targets" ; \
targets=$$$$(go list $(GO_PKG_BUILD_PKG)) ; \
for pattern in $(GO_PKG_EXCLUDES); do \
targets=$$$$(echo "$$$$targets" | grep -v "$$$$pattern") ; \
done ; \
echo ; \
\
if [ "$(GO_PKG_GO_GENERATE)" = 1 ]; then \
echo "Calling go generate" ; \
go generate -v $(1) $$$$targets ; \
echo ; \
fi ; \
\
if [ "$(GO_PKG_SOURCE_ONLY)" != 1 ]; then \
echo "Building targets" ; \
case $(GO_ARCH) in \
arm) installsuffix="-installsuffix v$(GO_ARM)" ;; \
mips|mipsle) installsuffix="-installsuffix $(GO_MIPS)" ;; \
Expand All @@ -250,10 +257,16 @@ define GoPackage/Build/Compile
$(1) \
$$$$targets ; \
retval=$$$$? ; \
echo ; \
\
if [ "$$$$retval" -eq 0 ] && [ -z "$(call GoPackage/has_binaries)" ]; then \
echo "No binaries were generated, consider adding GO_PKG_SOURCE_ONLY:=1 to Makefile" ; \
echo ; \
fi ; \
\
echo "Cleaning module download cache (golang/go#27455)" ; \
go clean -modcache ; \
echo ; \
fi ; \
exit $$$$retval ; \
)
Expand Down

0 comments on commit 07559bf

Please sign in to comment.