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 committed Dec 11, 2018
1 parent 8a2a062 commit 0fa7f3c
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 0fa7f3c

Please sign in to comment.