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 process improvements #40

Merged
merged 53 commits into from
Feb 2, 2017
Merged

Build process improvements #40

merged 53 commits into from
Feb 2, 2017

Conversation

CyberShadow
Copy link
Member

@CyberShadow CyberShadow commented Jan 25, 2017

  • Update Dr. MinGW
  • Update wxWidgets to latest version
  • Minimize wxWidgets configuration (setup.h, solution file)
  • Add vcredist to installer
  • Include Wine into solution
  • Move wine submodule one level higher
  • Add top-level build.cmd
    • Build installer
  • Update documentation (Dr. MinGW build instructions, etc.)
  • Set up CI
    • Build
      • Artifacts
        • Installer
        • Debug info
    • Test
      • Wine
      • Dr. MinGW
      • Look through closed GitHub issues
  • Update MS dbghelp
  • Update Wine

We need this to get x64 configurations in wxWidgets project files,
so that we can do x64 builds entirely from Very Sleepy's solution file.
This greatly simplifies building wxWidgets for Very Sleepy, as it no
longer requires manually downloading/extracting wxWidgets, invoking
nmake for each platform/configuration pair, and setting up an
environment variable that is visible to Visual Studio which indicates
the wxWidgets directory.

Unfortunately, this comes with a drawback: the wxWidgets Visual Studio
project files only support building against the DLL version of the C
runtime, which means that we are forced to switch away from statically
linking Very Sleepy to the C runtime, to linking dynamically to the
DLL version, and requiring that the DLL is present on the system Very
Sleepy runs on.

Installer changes to facilitate the above precondition will follow.
It will have been placed there already by copy_files.bat.

This simplifies the install script a bit, and allows placing a pre-built
dbghelpw.dll under the dbghelp_* directories.
As wxWidgets's project files only include configurations for building
against the Visual C++ runtime as a DLL, including them into Very
Sleepy's solution file necessitates doing the same wiht Very
Sleepy. Since we need only the C and C++ language runtimes, simply
include those DLLs directly.
v3.1.0 doesn't seem to work yet
(erroring about wx/setup.h not being found).
Don't allow the CC variable from the environment to pollute the build.
- Use a customized setup.h included in Very Sleepy's source tree
- Remove unneeded wxWidgets project files from Very Sleepy's solution
- Fix a missing include in profilergui.cpp (which was being included
  by an unused component)
@CyberShadow CyberShadow merged commit 96cedc4 into master Feb 2, 2017
@CyberShadow CyberShadow deleted the build-process branch August 19, 2021 06:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant