diff --git a/CMakeLists.txt b/CMakeLists.txt index f8c870880fa9c59c891d56cc381f44f77e4a5bd1..eec7c5ab123116cf6967a480a45c81b1b62cfca2 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -28,6 +28,7 @@ if (CMAKE_PROJECT_NAME STREQUAL PROJECT_NAME) cmake_find_package cmake_find_package_multi OPTIONS + glfw:shared=True glad:gl_profile=core glad:gl_version=4.5 glad:extensions="GL_ARB_get_program_binary" @@ -51,8 +52,6 @@ if (CMAKE_PROJECT_NAME STREQUAL PROJECT_NAME) ) endif() - execute_process( COMMAND ls ${CMAKE_BINARY_DIR} ) - # testing support include(CTest) @@ -81,13 +80,6 @@ endif() # end windows support ## -set(FGGL_WAYLAND True) - - -include(GNUInstallDirs) - -# depedencies - # engine #add_subdirectory(vendor/imgui/) @@ -101,6 +93,8 @@ add_subdirectory(demo) # INSTALL PHASE # see https://decovar.dev/blog/2021/03/08/cmake-cpp-library/ ## +include(GNUInstallDirs) + file(GLOB_RECURSE public_headers ${PROJECT_SOURCE_DIR}/include/${PROJECT_NAME}/*.hpp ${PROJECT_SOURCE_DIR}/include/${PROJECT_NAME}/*.h diff --git a/build.sh b/build.sh index 475ece525641e4c0db4d17925a75e60761ae90ce..7cdcef247d263873f7dabb8b8806be09550aa610 100755 --- a/build.sh +++ b/build.sh @@ -2,13 +2,9 @@ CACHE=/tmp/fggl/ LOG=$CACHE/demo.log -EXE="../builds/cli/bin/FgglDemo" -# check build directory exists -if [[ ! -d "builds/cli/" ]] -then - mkdir -p builds/cli -fi +BUILD_PATH="builds/cli" +DEMO_EXE="$PWD/$BUILD_PATH/demo/FgglDemo" # check cmake exists if [ ! -x "$(command -v cmake)" ]; then @@ -18,30 +14,31 @@ if [ ! -x "$(command -v cmake)" ]; then fi # if doing shader development, disable the cache to make sure changes take affect +rm -rf builds/cli rm -rf $CACHE # # build step # -cmake -S . -B build -DCMAKE_BUILD_TYPE=debug -cmake --build build +cmake -S . -B $BUILD_PATH -DCMAKE_BUILD_TYPE=debug +cmake --build $BUILD_PATH # # additional stuff # -EXE="gdb $EXE" +#EXE="gdb $EXE" # gamemoderun if [ -x "$(command -v gamemoderun)" ]; then - EXE="gamemoderun $EXE" + DEMO_EXE="gamemoderun $DEMO_EXE" fi # mangohud if [ -x "$(command -v mangohud)" ]; then - EXE="mangohud --dlsym $EXE" + DEMO_EXE="mangohud --dlsym $DEMO_EXE" fi pushd demo -$EXE +$DEMO_EXE popd diff --git a/demo/CMakeLists.txt b/demo/CMakeLists.txt index 2130e1d6f6dfc66348e6d8f44dfe7e958fbacd25..f3e4756e4cabce8894b39bd629b6aae7b5b2c7d3 100644 --- a/demo/CMakeLists.txt +++ b/demo/CMakeLists.txt @@ -1,7 +1,8 @@ # Executable add_executable(FgglDemo main.cpp) + target_link_libraries(FgglDemo fggl) -target_include_directories(FgglDemo PUBLIC ${PROJECT_BINARY_DIR}) +#target_include_directories(FgglDemo PUBLIC ${PROJECT_BINARY_DIR}) # rssources file(GLOB_RECURSE data data/*) diff --git a/fggl/CMakeLists.txt b/fggl/CMakeLists.txt index 968b06339e0288c6a6b1937486d9d557f50c2ac9..f2db608663e1ecf4f1e4d64894cd07ebd110c750 100644 --- a/fggl/CMakeLists.txt +++ b/fggl/CMakeLists.txt @@ -60,7 +60,6 @@ target_link_libraries(${PROJECT_NAME} PRIVATE spdlog::spdlog) # Graphics backend add_subdirectory(gfx) -target_link_libraries(${PROJECT_NAME} PUBLIC glfw) # Debug backend add_subdirectory(debug) diff --git a/fggl/gfx/CMakeLists.txt b/fggl/gfx/CMakeLists.txt index bc498648d489bba61996639bf83c1ae43b28272f..0873a007a5a87d75e9f8559b330d9a17e6386324 100644 --- a/fggl/gfx/CMakeLists.txt +++ b/fggl/gfx/CMakeLists.txt @@ -1,8 +1,11 @@ # Sources - find_package( glfw3 REQUIRED ) -target_link_libraries(fggl PUBLIC glfw) + +include(CMakePrintHelpers) +cmake_print_variables(GLFW_TARGETS) + +target_link_libraries(fggl PUBLIC glfw::glfw ) target_sources(fggl PRIVATE