Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 3abf2ee0 authored by Dan Willemsen's avatar Dan Willemsen Committed by android-build-merger
Browse files

Merge "Document the m4 prebuilts"

am: 474de20a

Change-Id: If16ce1087669b3768316489ff2d6dab3c5acd8ff
parents f174a2da 474de20a
Loading
Loading
Loading
Loading
+15 −0
Original line number Diff line number Diff line
# Build System Changes for Android.mk Writers

## `m4` is not available on `$PATH`

There is a prebuilt of it available in prebuilts/build-tools, and a make
variable `M4` that contains the path.

Beyond the direct usage, whenever you use bison or flex directly, they call m4
behind the scene, so you must set the M4 environment variable (and depend upon
it for incremental build correctness):

```
$(intermediates)/foo.c: .KATI_IMPLICIT_OUTPUTS := $(intermediates)/foo.h
$(intermediates)/foo.c: $(LOCAL_PATH)/foo.y $(M4) $(BISON) $(BISON_DATA)
	M4=$(M4) $(BISON) ...
```

## Rules executed within limited environment

With `ALLOW_NINJA_ENV=false` (soon to be the default), ninja, and all the