Skip to content

clean up submodule references#7656

Open
Goober5000 wants to merge 1 commit into
scp-fs2open:masterfrom
Goober5000:cleanup/rpavlik
Open

clean up submodule references#7656
Goober5000 wants to merge 1 commit into
scp-fs2open:masterfrom
Goober5000:cleanup/rpavlik

Conversation

@Goober5000

@Goober5000 Goober5000 commented Jul 26, 2026

Copy link
Copy Markdown
Contributor

Vendor the CMake modules FSO actually used from the ~150-file rpavlik
submodule into cmake/, then drop the submodule:

  • EnableExtraCompilerWarnings.cmake (toolchain warning flags)
  • CreateLaunchers.cmake + its CleanDirectoryList.cmake dependency and
    launcher-templates/ (IDE launcher generation for the game and FREDs)
  • MSVCMultipleProcessCompile.cmake + its ListCombinations.cmake dependency

Also remove the dead cotire module-path entry and the vestigial
ENABLE_COTIRE option (cotire is never invoked and its directory no longer
exists), and repoint the submodule-initialized check at libRocket.

Follow-up to #7646.

@Goober5000 Goober5000 added build An issue related to the build systems ci A feature or issue related to the continous integration tools labels Jul 26, 2026
@Goober5000 Goober5000 changed the title clean up submodule submodule references clean up submodule references Jul 26, 2026
@notimaginative

Copy link
Copy Markdown
Contributor

This might also be a good opportunity to look into switching to FectchContent for libRocket instead of it being a submodule. That would remove the last submodule and eliminate the initial submodule --init step.

The main downside is that it would be grabbed during cmake's configure step. So while it would be much easier for new or infrequent devs to just clone the fs2open repo, configure, and build, it becomes a bit of an annoyance for core devs that use multiple build trees or clean them often.

Vendor the CMake modules FSO actually used from the ~150-file rpavlik
submodule into cmake/, then drop the submodule:

  - EnableExtraCompilerWarnings.cmake (toolchain warning flags)
  - CreateLaunchers.cmake + its CleanDirectoryList.cmake dependency and
    launcher-templates/ (IDE launcher generation for the game and FREDs)
  - MSVCMultipleProcessCompile.cmake + its ListCombinations.cmake dependency

Also remove the dead cotire module-path entry and the vestigial
ENABLE_COTIRE option (cotire is never invoked and its directory no longer
exists), and repoint the submodule-initialized check at libRocket.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

build An issue related to the build systems ci A feature or issue related to the continous integration tools

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants