Repository navigation
build: fix generator deps and simplify Makefile.am - #177
Merged
Merged
Conversation
kolyshkin
force-pushed
the
fix-generator-deps
branch
2 times, most recently
from
September 10, 2026 20:29
af0b4e9 to
ad718ed
Compare
Collaborator
Author
|
@giuseppe PTAL |
giuseppe
approved these changes
Oct 12, 2026
Member
|
Sorry I've missed these for so long. There are merge conflicts, please merge once fixed |
The stamps that drive the generation only depend on json_common.{c,h},
so a change to generate.py or to the modules it imports does not trigger
anything: make reports there is nothing to be done, the tree keeps the
sources generated by the previous version of the generator, and the
change appears to have no effect until someone cleans the tree by hand.
Add the generator sources to the prerequisites of every stamp.
Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com>
The empty line in the middle of the src/image_spec_stamp recipe is harmless but confusing; remove it. Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com>
Every generated source and header was listed twice: once in SOURCE_FILES, and once more in a hand-written rule tying it to the stamp of the generator run that produces it. The two lists drifted apart -- runtime_spec_schema_config_zos.h was missing from the stamp rules entirely, and only the $(HEADER_FILES): %.h: %.c rule kept it building. Split SOURCE_FILES into one variable per generator run and derive the stamp prerequisites from those, headers included. The lists are now stated once, and a file added to a group cannot be forgotten in the rules. The $(HEADER_FILES): %.h: %.c rule becomes redundant: every header now depends on its stamp directly. Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com>
Automake defaults prog_SOURCES to the program name with a .c suffix, and prog_LDADD to LDADD, so the per-test blocks only restated the defaults. Set LDADD once and drop them, along with TESTS_LDADD. Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com>
kolyshkin
force-pushed
the
fix-generator-deps
branch
from
October 12, 2026 05:52
ad718ed to
2d20179
Compare
Collaborator
Author
You and me both... I totally forgot.
No merge button for me here |
Member
added now! |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
A few build system fixes and cleanups, one per commit:
The stamps driving the generation only depended on
json_common.{c,h},so a change to
generate.pyor to the modules it imports did nottrigger anything -- the tree kept the sources produced by the previous
version of the generator until someone cleaned it by hand. The
generator sources are now prerequisites of every stamp.
Every generated source and header was listed twice: in
SOURCE_FILES,and again in a hand-written rule tying it to a stamp. The two lists had
drifted apart (
runtime_spec_schema_config_zos.hwas missing from thestamp rules). The stamp prerequisites are now derived from per-generator
variables, so the lists are stated once.
The per-test
_SOURCES/_LDADDblocks only restated automakedefaults;
LDADDis now set once.Net effect on
Makefile.am: -140 lines.make checkandmake distcheckpass, and the intermediate commits build and test individually.