From 82b06c247df0489d9a460399ea77e8a628c4fda6 Mon Sep 17 00:00:00 2001 From: Shaun Reed Date: Sat, 16 Jul 2022 20:11:07 -0400 Subject: [PATCH] Add CI to test Ubuntu build + Refactor CMakeLists --- .github/workflows/build-test.yml | 26 ++++++++++++++++++++++++++ .gitignore | 3 ++- CMakeLists.txt | 12 +++--------- 3 files changed, 31 insertions(+), 10 deletions(-) create mode 100644 .github/workflows/build-test.yml diff --git a/.github/workflows/build-test.yml b/.github/workflows/build-test.yml new file mode 100644 index 0000000..2898034 --- /dev/null +++ b/.github/workflows/build-test.yml @@ -0,0 +1,26 @@ +name: Build Test + +on: + push: + pull_request: + workflow_dispatch: + +jobs: + Ubuntu: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + + - name: Install Qt + uses: jurplel/install-qt-action@v2 + with: + version: '6.2.3' + + - name: Install Assimp + run: | + sudo apt install libassimp-dev -y + + - name: Build Qtk + run: | + mkdir build && cd build + cmake .. -DCMAKE_PREFIX_PATH=/home/runner/work/qtk/Qt/6.2.3/gcc_64/ && cmake --build . \ No newline at end of file diff --git a/.gitignore b/.gitignore index 6621c00..ec5f059 100644 --- a/.gitignore +++ b/.gitignore @@ -3,6 +3,7 @@ # CMake build files **/cmake-build-debug/** +**/build/** # C++ objects and libs *.slo @@ -35,7 +36,7 @@ ui_*.h *.qmlc *.jsc Makefile* -*build-* +/*build-* *.qm *.prl diff --git a/CMakeLists.txt b/CMakeLists.txt index ca1b64c..3eaf0a2 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -19,8 +19,9 @@ set(CMAKE_AUTORCC ON) set(CMAKE_CXX_STANDARD 11) set(CMAKE_CXX_STANDARD_REQUIRED ON) -#find_package(QT NAMES Qt6 COMPONENTS Widgets REQUIRED) -find_package(Qt6 COMPONENTS Widgets OpenGLWidgets OpenGL REQUIRED) +# For CLion builds, point CMAKE_PREFIX_PATH to Qt6 install directory +list(APPEND CMAKE_PREFIX_PATH $ENV{HOME}/Code/Clones/Qt6.2/6.2.3/gcc_64/) +find_package(Qt6 COMPONENTS OpenGLWidgets REQUIRED) # Add our Qt resources.qrc file to our application set(SOURCES app/main.cpp) @@ -35,10 +36,6 @@ add_executable( # External Libraries ################################################################################ -# Find and link OpenGL package; Otherwise show an error -set(OpenGL_GL_PREFERENCE LEGACY) -find_package(OpenGL REQUIRED) - # https://github.com/assimp/assimp/commit/6ac8279977c3a54118551e549d77329497116f66 find_package(assimp REQUIRED) @@ -65,10 +62,7 @@ add_library(main-widget SHARED ) target_include_directories(main-widget PUBLIC src/) -target_include_directories(main-widget PRIVATE ${OPENGL_INCLUDE_DIR}) -target_link_libraries(main-widget PRIVATE ${OPENGL_LIBRARIES}) target_link_libraries(main-widget PRIVATE assimp) -target_link_libraries(main-widget PUBLIC Qt${QT_VERSION_MAJOR}::Widgets) target_link_libraries(main-widget PUBLIC Qt${QT_VERSION_MAJOR}::OpenGLWidgets) ################################################################################