-
Notifications
You must be signed in to change notification settings - Fork 358
Remove uses of compat.h in libmythdvdnav and have configure create libmythdvdnav/config.h #1156
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
base: master
Are you sure you want to change the base?
Conversation
76360d3
to
259e551
Compare
It should be noted that libmythdvdnav's config.h file probably also needs to be installed when compiling with MSVC, but I don't know how a native Windows build with MSVC works and neither libdvdread nor libdvdnav appear to install their |
it looks like both macports and homebrew can find libdvdcss with pkg-config, but when building with cmake neither can find it
Found in the cmake output message: And sadly not dynamically linked by cmake |
strike that - it helps to use the right branch... macports and homebrew both picked up ibdvdcss. I'll test once the apss get through notarization. macports:
homebrew:
|
tested and verified to work with a physical dvd on macOS |
Should I remove the customization for dynamically loading libdvdcss on macOS since it is not compiled when libdvdcss is found via |
I'd suggest yes. I was planning on deprecating the qmake macOS compile script in the next release so removing the dynamic linking work around would clean up / simplify the code base. |
The removed comment was wrong and the surrounding lines deal with MythTV's customizations to use code from libmythtv, so extract lines not related to those customizations.
Upstream libdvdread already used a version.h and upstream libdvdnav added one since our last synchronization.
The only difference with libdvdread's version is snprinf() is now used instead of _snprintf(), but this produces no change since errstr in dlerror() is larger than the maximum possible string produced by the use of snprintf(). The extra config.h lines are from libdvdread's msvc/config.h.
This is a boolean, but libdvdnav doesn't use _Bool or bool.
There are no substitutions compat.h would now make.
This reduces the changes versus upstream and reduces files included from MythTV. This also allows libmythdvdnav to dynamically link instead of dynamically load libdvdcss with qmake.
pkg-config is now used instead to enable dynamic linking. This was from: Search for the region decrypting library in Mac OS X bundles. A little ugly MythTV@03b8c7d Look in more than one location for libdvdcss on mac. MythTV@18fdd67
This complements #1155 by removing the uses of compat.h in libmythdvdnav.
This is preliminary work for updating libmythdvdnav and can be merged separately if desired.
This also enables configure to find libdvdcss via
pkg-config
and also converts CMake to usepkg-config
.Checklist