Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add special rules for generated headers #36

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

steelman
Copy link

@steelman steelman commented Aug 3, 2023

bison(1) and flex(1) pose a problem for make(1) because they generate many output files. These files when properly added to dependency tree may make make(1) run rules to generate them twice depending on timing which in turn results in a race condition and failed build especially on heavily loaded systems.

To aviod that special rules that serialise dependencies need to be introduced which is what automake(1) has made for long time.

https://git.savannah.gnu.org/cgit/automake.git/commit/?id=788a63b300568b1c1876e4ad30b966df2f0710fc

Additionally to avoid problems when running make -n, rm(1) and make(1) commands need to be placed under separate if statements.

https://git.savannah.gnu.org/cgit/automake.git/commit/?id=d7c1679b14c1ab691927f3243df1cb3cbb2360aa

bison(1) and flex(1) pose a problem for make(1) because they generate
many output files. These files when properly added to dependency tree
may make make(1) run rules to generate them twice depending on timing
which in turn results in a race condition and failed build especially
on heavily loaded systems.

To aviod that special rules that serialise dependencies need to be
introduced which is what automake(1) has made for long time.

https://git.savannah.gnu.org/cgit/automake.git/commit/?id=788a63b300568b1c1876e4ad30b966df2f0710fc

Additionally to avoid problems when running `make -n`, rm(1) and make(1)
commands need to be placed under separate `if` statements.

https://git.savannah.gnu.org/cgit/automake.git/commit/?id=d7c1679b14c1ab691927f3243df1cb3cbb2360aa

Signed-off-by: Łukasz Stelmach <l.stelmach@samsung.com>
@google-cla
Copy link

google-cla bot commented Aug 3, 2023

Thanks for your pull request! It looks like this may be your first contribution to a Google open source project. Before we can look at your pull request, you'll need to sign a Contributor License Agreement (CLA).

View this failed invocation of the CLA check for more information.

For the most up to date status, view the checks section at the bottom of the pull request.

@happyCoder92
Copy link
Collaborator

Hi! This looks good. Can you, please, resolve the problem with missing CLA though? :)

@steelman
Copy link
Author

I am working on it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants