mirror of https://github.com/golang/go.git
cgo: don't run cgo when not compiling
The logic introduced to avoid running cgo when
introducing _cgo_flags is faulty. My goal was
to handle it with the following statement:
-include _cgo_flags
The dash tells make to ignore errors if it can't
include the file.
What I missed, though, was the fact that it
*will* attempt to build the file if it knows
how.
This change will introduce the originally
intended semantics of not attempting to build
the file before necessary.
R=rsc
CC=golang-dev
https://golang.org/cl/4023069
This commit is contained in:
parent
1b8d373463
commit
b9183b986a
|
|
@ -119,14 +119,14 @@ _cgo_run: $(CGOFILES)
|
|||
# _CGO_CFLAGS and _CGO_LDFLAGS are defined via the evaluation of _cgo_flags.
|
||||
# The include happens before the commands in the recipe run,
|
||||
# so it cannot be done in the same recipe that runs cgo.
|
||||
_cgo_flags: _cgo_run
|
||||
_load_cgo_flags: _cgo_run
|
||||
$(eval include _cgo_flags)
|
||||
|
||||
# Include any previous flags in case cgo files are up to date.
|
||||
-include _cgo_flags
|
||||
|
||||
# Ugly but necessary - cgo writes these files too.
|
||||
_cgo_gotypes.go _cgo_export.c _cgo_export.h _cgo_main.c _cgo_defun.c: _cgo_flags
|
||||
_cgo_gotypes.go _cgo_export.c _cgo_export.h _cgo_main.c _cgo_defun.c: _load_cgo_flags
|
||||
@true
|
||||
|
||||
%.cgo1.go %.cgo2.c: _cgo_defun.c
|
||||
|
|
|
|||
Loading…
Reference in New Issue