-
-
Notifications
You must be signed in to change notification settings - Fork 24
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
Enhance Makefiles #51
Conversation
I'm not a fan of the added complexity just to reduce line count. There's no complex logic which is actually deduplicated here. I'm a fan of the |
Also the change introduces weird doc comments. You do realize that double-hash comments on target lines are used for autogenerating usage documentation? Using The generic I think I'm basically fine with everything that doesn't use |
If you do reorder, please do it in a seperate commit to the other refactors, otherwise it's difficult to review the diff. |
Updated, and force pushed. It should be much easier to review. Took out all the complicated dynamic recipes. I also tried to format the all64,all32s with dynamic recipes while retaining their comments in the help recipe, but I couldn't come up with a way to process and replace.
I also included a change in the tabular formatting to make whitespace more consistent, but it's rather opinionated. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good.
&& docker rm -v "$$container_id" | ||
|
||
.PHONY: compress64 | ||
compress64: $(OUTPUT_BASENAME64).tar.gz $(OUTPUT_BASENAME64).tar.xz ## Build compressed tarballs | ||
|
||
$(OUTPUT_BASENAME64).tar.gz: $(OUTPUT_BASENAME64).tar | ||
gzip -c $(OUTPUT_BASENAME64).tar > $(OUTPUT_BASENAME64).tar.gz | ||
$(OUTPUT_BASENAME64).tar.gz $(OUTPUT_BASENAME32).tar.gz: %.gz: % |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Are the first two targets actually necessary?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Not necessary, but it restricts it to a static readable list. It can be removed in the interest of brevity but I kept them in in the interest of clarity.
The first commit of this PR has been merged in #139. The others don't really apply anymore due to the removal of distro package building recipes. |
This PR replaces the duplicate references to the targets and prerequisites with magic variables and reworks the Linux Makefile to handle 32 vs 64 bit dynamically where possible. Some targets were rearranged in the interest of keeping similars together.
I did not attempt handling targets with 32/64 in the variable names as this would have required variable changes and quite a bit of conditionals, though it could be handled.
Feedback highly encouraged.
E: Targets tested to be the same through --dry-run