Skip to content

Commit

Permalink
.exe from clion not working but vs does... hmm...
Browse files Browse the repository at this point in the history
  • Loading branch information
r3w0p committed May 17, 2024
1 parent 2e3d58c commit 2c13aa0
Show file tree
Hide file tree
Showing 6 changed files with 83 additions and 58 deletions.
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: Windows
name: Building

on:
push:
Expand All @@ -10,11 +10,14 @@ env:
jobs:
build:
name: Build
runs-on: windows-latest
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-latest, macos-latest, windows-latest]

steps:
- name: Checkout
uses: actions/checkout@v3
uses: actions/checkout@latest

- name: Install CMake and Ninja
uses: lukka/get-cmake@latest
Expand Down
Empty file added .github/workflows/testing.yml
Empty file.
111 changes: 60 additions & 51 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -10,104 +10,113 @@ set(PROJECT_COPYRIGHT "Copyright (c) 2022-2024 r3w0p")
set(PROJECT_DESCRIPTION "A TUI version of the Caravan card game from Fallout: New Vegas.")
set(PROJECT_URL "https://github.com/r3w0p/caravan")


include(FetchContent)
set(FETCHCONTENT_UPDATES_DISCONNECTED TRUE)

# FTXUI

# --- FTXUI
FetchContent_Declare(ftxui
GIT_REPOSITORY https://github.com/ArthurSonzogni/ftxui
GIT_TAG v5.0.0
GIT_REPOSITORY https://github.com/ArthurSonzogni/ftxui
GIT_TAG v5.0.0
)
FetchContent_MakeAvailable(ftxui)
# ---


# GoogleTest
# --- GoogleTest
FetchContent_Declare(googletest
GIT_REPOSITORY https://github.com/google/googletest
GIT_TAG v1.14.0
GIT_REPOSITORY https://github.com/google/googletest
GIT_TAG v1.14.0
)
# For Windows: Prevent overriding the parent project's compiler/linker settings
set(gtest_force_shared_crt ON CACHE BOOL "" FORCE)
FetchContent_MakeAvailable(googletest)
# ---


# --- caravan libraries
include_directories(include)

add_library(controller
"include/caravan/controller/controller.h"
"include/caravan/controller/controller.h"

"src/caravan/controller/controller.cpp"
"src/caravan/controller/controller.cpp"
)

add_library(core
"include/caravan/core/common.h"
"include/caravan/core/exceptions.h"
"include/caravan/core/common.h"
"include/caravan/core/exceptions.h"

"src/caravan/core/common.cpp"
"src/caravan/core/exceptions.cpp"
"src/caravan/core/common.cpp"
"src/caravan/core/exceptions.cpp"
)

add_library(model
"include/caravan/model/caravan.h"
"include/caravan/model/deck.h"
"include/caravan/model/game.h"
"include/caravan/model/player.h"
"include/caravan/model/table.h"

"src/caravan/model/caravan.cpp"
"src/caravan/model/deck.cpp"
"src/caravan/model/game.cpp"
"src/caravan/model/player.cpp"
"src/caravan/model/table.cpp"
"include/caravan/model/caravan.h"
"include/caravan/model/deck.h"
"include/caravan/model/game.h"
"include/caravan/model/player.h"
"include/caravan/model/table.h"

"src/caravan/model/caravan.cpp"
"src/caravan/model/deck.cpp"
"src/caravan/model/game.cpp"
"src/caravan/model/player.cpp"
"src/caravan/model/table.cpp"
)

add_library(user
"include/caravan/user/bot_easy.h"
"include/caravan/user/user.h"
"include/caravan/user/bot_easy.h"
"include/caravan/user/user.h"

"src/caravan/user/bot_easy.cpp"
"src/caravan/user/user.cpp"
"src/caravan/user/bot_easy.cpp"
"src/caravan/user/user.cpp"
)

add_library(view
"include/caravan/view/view.h"
"include/caravan/view/view.h"

"src/caravan/view/view.cpp"
"src/caravan/view/view.cpp"
)
# ---


# caravan.exe
# --- caravan.exe
add_executable(caravan
"src/caravan/main.cpp"
"src/caravan/main.cpp"
)

target_link_libraries(caravan
controller
core
model
user
view
ftxui::screen
ftxui::dom
ftxui::component
PRIVATE controller
PRIVATE core
PRIVATE model
PRIVATE user
PRIVATE view
PRIVATE ftxui::screen
PRIVATE ftxui::dom
PRIVATE ftxui::component
)
# ---


# test.exe
# --- test.exe
enable_testing()

add_executable(tests
"test/caravan/model/test_caravan.cpp"
"test/caravan/model/test_deck.cpp"
"test/caravan/model/test_game.cpp"
"test/caravan/model/test_player.cpp"
"test/caravan/model/test_table.cpp"
"test/caravan/model/test_caravan.cpp"
"test/caravan/model/test_deck.cpp"
"test/caravan/model/test_game.cpp"
"test/caravan/model/test_player.cpp"
"test/caravan/model/test_table.cpp"
)

target_link_libraries(tests
GTest::gtest_main
controller
core
model
user
view
PRIVATE GTest::gtest_main
PRIVATE core
PRIVATE model
)

include(GoogleTest)
gtest_discover_tests(tests)
# ---
17 changes: 17 additions & 0 deletions include/caravan/view/tui.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
// Copyright (c) 2022-2024 r3w0p
// The following code can be redistributed and/or
// modified under the terms of the GPL-3.0 License.

#ifndef CARAVAN_VIEW_TUI_H
#define CARAVAN_VIEW_TUI_H

#include <string>
#include "caravan/model/game.h"
#include "caravan/user/user.h"

class TUI {
public:
explicit TUI();
};

#endif //CARAVAN_VIEW_TUI_H
4 changes: 0 additions & 4 deletions src/caravan/main.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -5,13 +5,10 @@
#include <memory> // for allocator, __shared_ptr_access
#include <string> // for char_traits, operator+, string, basic_string

#include "ftxui/component/captured_mouse.hpp" // for ftxui
#include "ftxui/component/component.hpp" // for Input, Renderer, Vertical
#include "ftxui/component/component_base.hpp" // for ComponentBase
#include "ftxui/component/component_options.hpp" // for InputOption
#include "ftxui/component/screen_interactive.hpp" // for Component, ScreenInteractive
#include "ftxui/dom/elements.hpp" // for text, hbox, separator, Element, operator|, vbox, border
#include "ftxui/util/ref.hpp" // for Ref


int main() {
Expand Down Expand Up @@ -67,4 +64,3 @@ int main() {
auto screen = ScreenInteractive::Fullscreen();
screen.Loop(renderer);
}

Empty file added src/caravan/view/ftxui.cpp
Empty file.

0 comments on commit 2c13aa0

Please sign in to comment.