Skip to content
This repository has been archived by the owner on Jul 1, 2024. It is now read-only.

Remove Auto-Dependency System #870

Merged
merged 8 commits into from
Aug 19, 2022
Merged

Remove Auto-Dependency System #870

merged 8 commits into from
Aug 19, 2022

Conversation

Xaymar
Copy link
Owner

@Xaymar Xaymar commented Aug 11, 2022

Explain the Pull Request

Removes the Auto-Dependency System, as it is horribly broken beyond repair.

Completion Checklist

  • I have added myself to the Copyright and License headers and files.
  • I will maintain this code in the future and have added myself to CODEOWNERS.
  • I have tested this change on the following platforms:
    • MacOS 10.15
    • MacOS 11
    • MacOS 12
    • Ubuntu 20.04
    • Ubuntu 22.04
    • Windows 10
    • Windows 11

@Xaymar Xaymar force-pushed the patch/deps branch 17 times, most recently from 9050eec to ba56dad Compare August 13, 2022 14:21
@Xaymar Xaymar changed the title Replace Auto-Dependency system with proper scripts Remove Auto-Dependency System Aug 14, 2022
@Xaymar Xaymar force-pushed the patch/deps branch 12 times, most recently from d8d162a to 3c2b022 Compare August 14, 2022 11:51
@Xaymar Xaymar force-pushed the patch/deps branch 3 times, most recently from f674887 to 13c2498 Compare August 14, 2022 12:51
@Xaymar Xaymar marked this pull request as draft August 14, 2022 13:07
@Xaymar Xaymar force-pushed the patch/deps branch 2 times, most recently from 9a9ab2d to b0992ef Compare August 14, 2022 14:57
@Xaymar Xaymar mentioned this pull request Aug 14, 2022
@Xaymar Xaymar force-pushed the patch/deps branch 5 times, most recently from 2c20a92 to 82bcfa3 Compare August 16, 2022 21:39
@Xaymar
Copy link
Owner Author

Xaymar commented Aug 18, 2022

Windows with Qt6 only is failing in an unusual manner. Despite both of them running on the same code base, one of them is failing to compile.

@Xaymar Xaymar force-pushed the patch/deps branch 3 times, most recently from 6311574 to f668678 Compare August 19, 2022 00:56
@Xaymar
Copy link
Owner Author

Xaymar commented Aug 19, 2022

Will merge this as it is, as I have no idea why the obs framework doesn't include any INTERFACE_INCLUDE_DIRECTORIES.

@Xaymar Xaymar marked this pull request as ready for review August 19, 2022 01:25
While the system helped users get started quickly, it also presented a unique problem by itself. As CMake grew, the code that supported this system became more and more fragile to the point of failing at random, with no indication of why it would fail. Additionally as OBS Studio 28.0 adopted a much nicer system, it is no longer necessary to have this system at all.

As an addition to this change, all systems that could rely on FindModules now do so. This drastically reduces the complexity of the CMake system, while allowing significantly more flexibility with what binaries are really being used. In the best case this should allow a prepared user to build StreamFX by itself within seconds.
Note: We define CMAKE_PREFIX_PATH for OBS Studio here, which should normally (https://cmake.org/cmake/help/latest/variable/CMAKE_PREFIX_PATH.html#variable:CMAKE_PREFIX_PATH) be filled by the project itself. This is technically non-standard behavior, and may be remedied in the future by OBS Studio.
In some cases, this include is provided automatically when it shouldn't exist at all. The exact cause is unknown.
For unknown reasons this results in an error only when the project is built within git-bash and with cmake. It does not occur with cmake-gui or VS itself.
@Xaymar Xaymar merged commit b5d8c61 into master Aug 19, 2022
@Xaymar Xaymar deleted the patch/deps branch August 19, 2022 02:11
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant