Experiments in User Interfaces and Composition
Find a file
2024-03-20 13:45:59 -07:00
.circleci [Build] Don’t use CCache on CI. 2019-05-17 11:51:29 -07:00
Library [Image] Fix uninitialized variable in ImageSource. 2019-05-19 22:06:33 -07:00
Licenses [ThirdParty/rapidjson] Add a rapidjson target to ThirdParty. 2017-10-03 15:15:00 -07:00
Platforms [Build] Remove the defunct Android shell implementation. 2019-05-16 19:14:12 -07:00
Samples [Expression] Extract expression construction into libExpression. 2017-08-21 15:47:38 -07:00
ThirdParty [ThirdParty] Update Google Test dependency. 2019-05-19 21:40:28 -07:00
Tools/CMake Add missing warning flag for latest versions of Clang. 2021-04-13 15:57:20 -07:00
.clang-format [General] Make clang-format sort headers. 2017-01-17 17:22:21 -08:00
.gitattributes Update .gitattributes 2016-03-27 22:16:10 -07:00
.gitignore [Build] Attempt caching the build directory in CI. 2019-05-16 13:57:00 -07:00
CMakeLists.txt [Build] Remove the defunct Android shell implementation. 2019-05-16 19:14:12 -07:00
CPPLINT.cfg [Build] Fix CPP Lint errors. 2019-05-16 17:02:08 -07:00
Dockerfile [Build] Don’t use CCache on CI. 2019-05-17 11:51:29 -07:00
LICENSE [All] Update licenses. 2017-04-07 17:43:51 -07:00
Radar.sublime-project [Build] Remove the defunct Android shell implementation. 2019-05-16 19:14:12 -07:00
Rakefile [Build] Fix CPP Lint errors. 2019-05-16 17:02:08 -07:00
README.md Update README.md 2024-03-20 13:45:59 -07:00
Vagrantfile [Vagrant] Add ccache to provisioning on Linux. 2017-04-10 14:54:52 -07:00

Radar

Prerequisites

Mac

  • Xcode 7.2 or newer.
  • CMake
    • brew install cmake

Linux

  • A C++ 11 compiler: GCC 4.9 or above or Clang 3.6 or newer.
  • CMake, SDL 2, OpenGLES 2.
    • apt-get install -y cmake libgles2-mesa-dev libsdl2-dev ninja-build.
    • There is also a preconfigured Vagrantfile in source root if that is your style.
      • vagrant up linux; vagrant ssh linux; cd /vagrant;.
      • Limitation: In the Vagrant environment, you wont be able to run the desktop application, only build the tools, run tests, etc..

Build Instructions

Building on Mac OSX

  • Create a directory called build in the source root and move into it.
    • mkdir build; cd build;
  • Generate the Xcode project for all targets.
    • cmake ../ -G Xcode; cd ../
  • Open build/Radar.xcodeproj and run the scheme you want.

Building on Linux

  • Create a directory and move into it.
    • mkdir build; cd build;
  • Generate either the Makefile or Ninja project via CMake
    • For a Makefile project: cmake ../
    • For a Ninja project: cmake ../ -G Ninja
  • Build. You can also selectively build a particular target by specifying its name after the command.
    • make -j<jobs>
    • ninja

Linters & Formatters

All tools are run from the source root and require rake

Formatters

  • Make sure clang-format is installed.
    • rake format

Linters

  • Make sure cpplint is installed.
    • rake lint