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

[build:Makefile] Ensure compatibility with BSD make #9210

Merged
merged 14 commits into from Feb 15, 2024

Conversation

bashonly
Copy link
Member

@bashonly bashonly commented Feb 14, 2024

BSD Make can't do $(shell ...). We were already using it in the MARKDOWN and SYSCONFDIR vars, but by using it in CODE_FOLDERS and CODE_FILES I broke the yt-dlp target for bmake.

Also:

  • immediately raise error if GNU Make <4 is being used
  • include fixes for the yt-dlp target if bmake is run in jobs mode
  • remove vestigial SYSCONFDIR var assignment
  • exclude __pyinstaller subdir from tarball

GNU Make versions older than 4.0 don't support !=, but considering that gmake 4.0 was released in 2013 IMO we shouldn't need to support it. Apparently Debian was holding onto make 3.8x for a while, but as of Jessie it was bumped to 4.0 (and all Debian versions up-to-and-including Jessie ship EOL Python anyways). CentOS 7 still has make 3.8x, but it is EOL as of the end of June.

Template

Before submitting a pull request make sure you have:

In order to be accepted and merged into yt-dlp each piece of code must be in public domain or released under Unlicense. Check all of the following options that apply:

  • I am the original author of this code and I am willing to release it under Unlicense
  • I am not the original author of this code but it is in public domain or released under Unlicense (provide reliable evidence)

What is the purpose of your pull request?

@bashonly bashonly added bug Bug that is not site-specific docs/meta/cleanup related to docs, code cleanup, templates, devscripts etc labels Feb 14, 2024
@bashonly bashonly added regression Works in youtube-dl/older yt-dlp and removed bug Bug that is not site-specific labels Feb 14, 2024
Copy link
Member

@Grub4K Grub4K left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Makefiles are great 👍

@bashonly bashonly merged commit beaa1a4 into yt-dlp:master Feb 15, 2024
6 checks passed
@@ -141,6 +143,7 @@ yt-dlp.tar.gz: all
--exclude '__pycache__' \
--exclude '.pytest_cache' \
--exclude '.git' \
--exclude '__pyinstaller' \
Copy link
Member

@pukkandan pukkandan Feb 19, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why? User should be able to run pyinstaller from source tar

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

it was, fixed in 43cfd46

aalsuwaidi pushed a commit to aalsuwaidi/yt-dlp that referenced this pull request Apr 21, 2024
@bashonly bashonly deleted the fix/makefile branch May 10, 2024 19:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
docs/meta/cleanup related to docs, code cleanup, templates, devscripts etc regression Works in youtube-dl/older yt-dlp
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants