Skip to content

Conversation

@marauder2k7
Copy link
Contributor

@marauder2k7 marauder2k7 commented Oct 18, 2025

Added VCPKG to run the build on each platform.

VCPKG finds dependencies and sets up the environment for our own dependencies to build properly.

Other Fixes:
SFX System now integrates providers in a similar way the GFX system integrates adapters SFXDevice will setup automatically before the soundAssets are loaded meaning the buffers that need to be loaded should actually succeed.

MacOSX had an issue on teardown where it would try and free objects that didnt exist. This may have been causing issues on other platforms as well issue was in GuiPopUpCtrlEx

OpenAL Loading now uses system dll's as openal-soft is compiled using the al_router.

Templates can now be installed without copying their .in files to the output directory

===================================================

LibSndFile operates with an LGPL license and needs to be linked dynamically
Assimp now has its dependencies compiled through vcpkg
Faster build times since we are not compiling all the dependencies over and over again, vcpkg compiles them once.
Universal build now works on Mac

@marauder2k7 marauder2k7 marked this pull request as draft October 18, 2025 19:18
updated to use vcpkg

to use this mac users need to install homebrew and then brew install pkg-config
remove openal configurations. vcpkg does this for us
openal needs to be built as dynamic
add an arm64-osx-11 triplet to build for macosx may need an x64 couterpart

next up add linux.
remove space from my projects folder
update git ci to use vcpkg
since vcpkg sets up openal-soft for us we no longer have to set certain defines that control whether certain features are okay per platform. We just check ALC_EXT_EFX and load the functions as needed. More ground work to be added to this and since vcpkg is going to be rolled in this is the most logical place for it
fix defines for mac and linux
SFX System now loads up in a similar manner to the GFX System.
SFXProviders built on launch, sfxdevice chosen on launch.
SFXAL Cleanup no more need for the mOpenal table to be shared across classes.
mac teardown fix, mSearchEdit being null and calling deleteObject was causing issues.
this should make our libs static as it will find the ports we define for them
unexpected REF in pcre portfile
silence warnings
TORQUE_LIB_ROOT_DIRECTORY is not set at this point
profile safeties
clean vcpkg after build, no longer need the packages after everything is installed
stop copying the .in and .cmake files
seperate vcpkg libs from torque_link_libraries so we can put those back into a folder in the solution
test of linking dx compiler
@marauder2k7 marauder2k7 marked this pull request as ready for review October 24, 2025 11:37
@marauder2k7 marauder2k7 changed the title Vcpkg test VCPKG And Various Fixes Oct 24, 2025
move sync back project outside installTemplate macro so it remains in the project
VCPKG find_package calls should have CONFIG
the manifest file allows us to specify specific versions of libraries
@Azaezel Azaezel added the 4.2 label Oct 26, 2025
@Azaezel
Copy link
Contributor

Azaezel commented Oct 26, 2025

to be very, very clear: while the idea has a great deal of merit, and we look forward to the kinks getting knocked off, there's enough vetting that needs to go into this one it's not going to make the 4.1 cutoff.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants