From 3025671f4fc81abfcbfe634fd51211cc129dcbbf Mon Sep 17 00:00:00 2001 From: Benjamin Palko Date: Wed, 7 Aug 2024 22:04:12 -0400 Subject: [PATCH] minimal! --- CMakeLists.txt | 8 ++------ shell.nix | 4 ++-- src/main.cpp | 14 +++++++++----- vcpkg.json | 3 --- 4 files changed, 13 insertions(+), 16 deletions(-) delete mode 100644 vcpkg.json diff --git a/CMakeLists.txt b/CMakeLists.txt index a133807..d57e723 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,20 +1,16 @@ cmake_minimum_required(VERSION 3.29.6) -set(CMAKE_TOOLCHAIN_FILE "$ENV{VCPKG_ROOT}/scripts/buildsystems/vcpkg.cmake") set(CMAKE_CXX_COMPILER clang++) set(CMAKE_CXX_STANDARD 20) set(CMAKE_EXPORT_COMPILE_COMMANDS ON) set(CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake") -set(GLFW_BUILD_WAYLAND ON) -set(GLFW_PLATFORM GLFW_PLATFORM_WAYLAND) - project(HelloWorld CXX) find_package(fmt CONFIG REQUIRED) find_package(glfw3 CONFIG REQUIRED) -find_package(glad CONFIG REQUIRED) +find_package(OpenGL REQUIRED) add_executable(main src/main.cpp) -target_link_libraries(main PRIVATE fmt::fmt glfw glad::glad) +target_link_libraries(main PRIVATE fmt::fmt glfw OpenGL) diff --git a/shell.nix b/shell.nix index 4ef0504..e314eef 100644 --- a/shell.nix +++ b/shell.nix @@ -7,8 +7,8 @@ pkgs.llvmPackages.stdenv.mkDerivation { buildInputs = with pkgs.buildPackages; [ fmt glfw-wayland - libglvnd - libglvnd.dev + libGL + libGL.dev ]; # nativeBuildInputs is usually what you want -- tools you need to run nativeBuildInputs = with pkgs.buildPackages; [ diff --git a/src/main.cpp b/src/main.cpp index 0f7e61b..b223c3e 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -1,29 +1,33 @@ -#include -#include #include +#include int main() { + int supported = glfwPlatformSupported(GLFW_PLATFORM_WAYLAND); + fmt::print("Wayland support: {}\n", supported == GLFW_TRUE); + if (!glfwInit()) { const char *description; int code = glfwGetError(&description); - fmt::print("GLFW failed to init! {}", code); + fmt::print("GLFW failed to init! {} - {}\n", code, description); return -1; } GLFWwindow *window = - glfwCreateWindow(640, 480, "HELLO WORLD!", glfwGetPrimaryMonitor(), NULL); + glfwCreateWindow(640, 480, "GLFW", glfwGetPrimaryMonitor(), NULL); if (!window) { glfwTerminate(); - fmt::print("Window or OpenGL context creation failed"); + fmt::print("Window or OpenGL context creation failed\n"); return -1; } glfwMakeContextCurrent(window); + glClearColor(0.4f, 0.3f, 0.4f, 0.0f); /* Loop until the user closes the window */ while (!glfwWindowShouldClose(window)) { /* Render here */ + // glClear(GL_COLOR_BUFFER_BIT); /* Swap front and back buffers */ glfwSwapBuffers(window); diff --git a/vcpkg.json b/vcpkg.json deleted file mode 100644 index 415a3ab..0000000 --- a/vcpkg.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "dependencies": ["glad"] -}