This project is mirrored from https://***** Pull mirroring updated .
  1. 21 Mar, 2019 1 commit
    • Rafael Kitover's avatar
      auto deps for visual studio, take 1 · f1ecd7c3
      Rafael Kitover authored
      Use vcpkg to build deps when Visual Studio on Windows is detected, this
      only happens on first build, but does take a while because things like
      wxWidgets need to be built. Building from the developer command line is
      also supported.
      I considered making a pre-built tarball available, but the resulting
      files are just too big for this to be practical.
      Make the necessary cmake code changes for this to work and to use the
      vcpkg packages, which work just like on linux or have other cmake glue
      code available.
      To do this, we make vcpkg a submodule, use git to checkout all
      submodules, then just build and use the `vcpkg.exe`. Then we set the
      CMAKE_TOOLCHAIN_FILE to the vcpkg toolchain and also include it
      directly, why this is necessary I don't know, without it it doesn't work
      in the IDE but does on the command line.
      All of this requires no vcpkg integration with either the user or the
      project. A user-wide `ENV{VCPKG_ROOT}` is also supported.
      Fix the dynamic arrays in the GBA core, MSVC follows the C++ standard on
      this and gcc does not.
      TODO: add the necessary gcc flags to make this an error in cmake.
      Use `wxArrayString` instead of `std::vector<wxString>` in
      `src/wx/strutils.cpp` which is used in options parsing. This was
      necessary because of a bizarre linker error with wxWidgets when using
      Visual Studio:
      In `src/wx/panel.cpp` make sure the unimplemented D3D renderer code does
      not get compiled if it's actually `OFF`.
      Also fix the new spacer code for the drawing panel to not combine
      `wxEXPAND` with `wxALIGN_CENTER`, which is an error on wxWidgets 3.1.2,
      which is what vcpkg uses. The drawing panel seems to be automatically
      stretched to the max size automatically anyway.
      TODO: if all of this works, we'll need an Appveyor set up for visual
      Signed-off-by: default avatarRafael Kitover <>
  2. 26 Dec, 2018 1 commit
  3. 13 Sep, 2017 1 commit
    • Rafael Kitover's avatar
      restore wx 2.8 compat, improve string processing · 02b3defc
      Rafael Kitover authored
      Fix building with wx 2.8 by rewriting some more string related code.
      Replace all calls to .c_str() with .mb_str().
      Remove some of the .c_str()/.mb_str() calls where the target is already
      Move the split()/enum_idx() functions from opts.cpp into
      str_split()/vec_find() in strutils.h/strutils.cpp for use in other
      Replace the C-style string parsing code in a couple of places in
      wxvbam.cpp for processing possible command line options by splitting on
      Also replace a couple of places that use pointer arithmetic in
      widgets/joyedit.cpp and widgets/keyedit.cpp with wxString methods.