Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Install cmake on startup #66

Open
wants to merge 34 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from 33 commits
Commits
Show all changes
34 commits
Select commit Hold shift + click to select a range
f09d1dd
Added old implementation of automatic cmake install
maxarfvidssonnilsson Nov 1, 2021
8333cc3
Revert "Added old implementation of automatic cmake install"
maxarfvidssonnilsson Nov 2, 2021
cc4c5cd
temp
maxarfvidssonnilsson Nov 2, 2021
ccf0f6b
Added http request node to entry.tscn
maxarfvidssonnilsson Nov 3, 2021
58764fe
Changed implementation for new Is cmake available method
maxarfvidssonnilsson Nov 4, 2021
46fe398
Revert "Changed implementation for new Is cmake available method"
maxarfvidssonnilsson Nov 8, 2021
f3ebb67
Revert "Added http request node to entry.tscn"
maxarfvidssonnilsson Nov 8, 2021
3f5f853
Revert "temp"
maxarfvidssonnilsson Nov 8, 2021
92464cb
added auto copy for libSMCE.dll file
maxarfvidssonnilsson Nov 8, 2021
cbd43f2
Merge branch 'Adding-automatic-copying-for-libsmce.dll' into Install-…
maxarfvidssonnilsson Nov 8, 2021
8be00de
re-added the old solution since it might actually work after all
maxarfvidssonnilsson Nov 8, 2021
0760414
Added missing header
maxarfvidssonnilsson Nov 10, 2021
d5cd016
[CMake] Implement AUTO linkage for libSMCE + minor cleanups
AeroStun Nov 26, 2021
83041ae
Show list of compilers in frontend while using fake data.
tim-gr Nov 18, 2021
f8d0f69
Save compiler selection (right now with index in list)
tim-gr Nov 18, 2021
6415deb
Update Repository information
tim-gr Nov 27, 2021
d8a7793
Try out upstream libSMCE.
tim-gr Nov 28, 2021
bc3fbf3
Use task10 backend from source (GitHub-Repository)
tim-gr Nov 29, 2021
a54aa4c
Load actual backend data
tim-gr Nov 29, 2021
6ac20aa
Merge branch 'task10frontend' into Install-cmake-on-startup
maxarfvidssonnilsson Nov 30, 2021
a4cbb0e
Revert "Merge branch 'task10frontend' into Install-cmake-on-startup"
maxarfvidssonnilsson Nov 30, 2021
de5b615
copied over setupfile from task10 branch
maxarfvidssonnilsson Nov 30, 2021
abca734
copied over changes to CMakeLists from task10 branch
maxarfvidssonnilsson Nov 30, 2021
2057f8a
switched backend version
maxarfvidssonnilsson Nov 30, 2021
39e8f19
Bug fix
maxarfvidssonnilsson Dec 2, 2021
2c5d65f
Temp commit with recent work
maxarfvidssonnilsson Dec 2, 2021
80d2504
added custom download path that adapts to different operating systems
maxarfvidssonnilsson Dec 4, 2021
54c6aff
Cleaned up the prints and added back cmake check.
maxarfvidssonnilsson Dec 4, 2021
9534717
fixed issue where return value from check_cmake_availability() would …
maxarfvidssonnilsson Dec 4, 2021
8d79597
godot crashed so I commit just in case
maxarfvidssonnilsson Dec 5, 2021
b2e5fd2
safty push.
maxarfvidssonnilsson Dec 6, 2021
698c381
fixed two bugs
maxarfvidssonnilsson Jan 4, 2022
c902038
removed old comments and prints.
maxarfvidssonnilsson Jan 4, 2022
b950395
removed git history file
maxarfvidssonnilsson Jan 6, 2022
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
227 changes: 227 additions & 0 deletions 1
Original file line number Diff line number Diff line change
@@ -0,0 +1,227 @@
b2e5fd2 (HEAD -> Install-cmake-on-startup, origin/Install-cmake-on-startup) safty push.
AeroStun marked this conversation as resolved.
Show resolved Hide resolved
8d79597 godot crashed so I commit just in case
9534717 fixed issue where return value from check_cmake_availability() would be a reference.
54c6aff Cleaned up the prints and added back cmake check.
80d2504 added custom download path that adapts to different operating systems
2c5d65f Temp commit with recent work
39e8f19 Bug fix
2057f8a switched backend version
abca734 copied over changes to CMakeLists from task10 branch
de5b615 copied over setupfile from task10 branch
a4cbb0e Revert "Merge branch 'task10frontend' into Install-cmake-on-startup"
6ac20aa Merge branch 'task10frontend' into Install-cmake-on-startup
a54aa4c Load actual backend data
bc3fbf3 Use task10 backend from source (GitHub-Repository)
d8a7793 Try out upstream libSMCE.
6415deb Update Repository information
f8d0f69 Save compiler selection (right now with index in list)
83041ae Show list of compilers in frontend while using fake data.
d5cd016 (upstream/smce_autolinkage) [CMake] Implement AUTO linkage for libSMCE + minor cleanups
0760414 Added missing header
8be00de re-added the old solution since it might actually work after all
cbd43f2 Merge branch 'Adding-automatic-copying-for-libsmce.dll' into Install-cmake-on-startup
92464cb (origin/testing-things) added auto copy for libSMCE.dll file
3f5f853 Revert "temp"
f3ebb67 Revert "Added http request node to entry.tscn"
46fe398 Revert "Changed implementation for new Is cmake available method"
58764fe Changed implementation for new Is cmake available method
96d4db1 (upstream/master, origin/Development) git: ignore some common noise
ccf0f6b Added http request node to entry.tscn
cc4c5cd temp
8333cc3 Revert "Added old implementation of automatic cmake install"
f09d1dd Added old implementation of automatic cmake install
2225d99 (upstream/devel, origin/marek_builtin_help, origin/devel) [CMake+CI] Sync packaging to libSMCE level; skip RPMs
b963967 bind: add missing headers
3cc7c96 cmake: track godot-cpp 3.x branch"
e35948b Merge pull request #54 from ItJustWorksTM/update-backend
bd1a246 [CI] Parameterize on libSMCE version & tag
746bb57 [*] Update to libSMCE v1.4
c5221dd [CMake] Only require Godot before using it
ee2e5e7 CI: workaround chocolately legacy bug
6621a72 README: Specify how to install libSMCE as its not done automatically anymore
200b69f (tag: v1.3.2) [RELEASE] v1.3.2
01846ed Merge pull request #50 from ItJustWorksTM/libsmce13
3bfc167 Project: embed version instead of shipping it
a1ec48b Cmake: Workaround MacOS to find locally shipped libSMCE library
7b7c72f CMake: remove unused dependency on fmt
b5cb14a Project/CI: Upgrade to libsmce 1.3
325ec84 Project: add a contribution guide
5d1883a Project: clang reformat
bc2c30d [CI] Add ClangFormat checker
a2d0d1e [GDS] Add license header & fix filename typos
01265bd [CMake] Use FindPython3 instead of boldly invoking "python"
2288659 [CMake] Remove legacy godot-cpp caching machinery
e61b946 [CMake] Remove version from install dir
81f6b6f Project: remove reference to non existent script
5d63f47 [CI] Add package-checking workflow for DEB and PKGBUILD
19a05da [CI] Fix Linux cache key
3d2a600 (tag: v1.3.1) [RELEASE] v1.3.1
1eb6b36 [CMake] Track libSMCE v1.2.3
d8e8439 [CI] {Windows} Ignore Godot exit code
7edac3d [CI] Do not fill logs with Choco download progress info
6f1f6af [CI] Autodetect installed Godot version and cache export templates accordingly
63a07e1 [CMake] Detect Godot export failure
25b9b2f [CMake+CI] Allow disabling codesigning on exported bundles
0864967 [CI] Use godot 3.3.2
69cf795 [RELEASE] v1.3.0 - hopefully stable edition
3680bcb Config: fixup ultrasonic pins
79da83e Global: just hardcode exported classes for now
7202e6f Bind: add missing gdns for SD
d937306 Bind: Add support for SD library
dd9d074 Cmake: Track libSMCE 1.2.2
cf7a2c7 Car/*: support for configurable vehicles
f128487 Project: Add a PKGBUILD
460443d (tag: v1.2.1) [RELEASE] v1.2.1
c6bb762 Cmake: Track libSMCE 1.2.1
8494829 Odometer: fix limited range by tracking small changes locally
adf8a0e Global: expose named classes
f7d1661 ci: workaround older godot version on ubuntu
0703cb6 ci: use godot 3.3
2f5b7ba Raycar: reduce ultra sonic min distance
b547ba5 Entry: fix unsuitable environment error report
7425207 (tag: v1.2.0) [RELEASE] v1.2.0
40d31e6 Merge pull request #45 from ItJustWorksTM/ui-refactor
1ce613e *: Profiles, mods, libSMCE api update and more...
c3accea Camera/Raycar: make lifetime checking more explicit as Release mode is not too lenient
c5bffad Camera: explicitly convert Quat to Basis
70dd79f (tag: v1.1.9) [RELEASE] v1.1.9
39706ea [CI] Make Godot exports both in release and debug flavor
05a5f5f [CMake] Track libSMCE 1.1.5
085177b project: refresh
ec50790 ControlPane: print error codes outside [0-255] in hex
b599eb2 BoardRunner: specify arudino library versions
cb47d6d smartcar_shield: add measuring delay on distance sensors
e3b835c Odometer: fix magnitude
1d7ff51 [Bugfix] Use correct range for `GY50::getHeading`
bb61aef Camera: set the shader overlay manually instead of relying on anchors
55894b7 Entry: add version to window title if present also print some more diagnostics
c9b15a9 [CMake] Write version info into installation packages
91f2921 (tag: v1.1.8) [RELEASE] v1.1.8
4a17bd5 [CMake] Track libSMCE 1.1.4
05b4390 (tag: v1.1.7) [RELEASE] v1.1.7
3ececad config: fix odometer pins
8643d9e config: move to /share to be included on export
d9175ab [RELEASE] v1.1.6 * libSMCE FrameBuffer support * rewritten BoardConfig wrapper, now uses json
c7dff52 popout: godot ids update
8ece054 config: fix right motor pins
473f0fe ControlPane: fix notification text style
82ec4b8 BoardConfig: refactor to Ref / Dict / Json solution removes the stupid Resource based implementation
9e85afc Camera: add lens distortion effect
c7cb0dc Camera: fix no shadows
a0970c2 Raycar: add position to Camera attachment name
d8b4431 Attachments: add Camera support Using the framebuffer api of libSMCE
9e9dee9 CMake: track libSMCE 1.1.3
4707fb4 project: hard cap fps at 144
d9a0544 [README] Slight cleanup
03ce701 (tag: v1.1.5) [RELEASE] v1.1.5
f3b3834 [CMake] Track libSMCE v1.1.2
e163778 (tag: v1.1.4) [RELEASE] v1.1.4
6d139f8 RayCar: fix flipped motors
5b3aee1 Log: implement popout window
9f5c64e [CMake] Track libSMCE v1.1.1
32ec7ba ControlPane: toggle log window on failure
8ca0fec (tag: v1.1.2) [RELEASE] v1.1.2
fc7e5e1 Playground: move origin to open field
e9286ea Raycar: add sideways friction This _mostly_ fixes drifting, still needs some more work at low speeds as there is still some softness present.
22017f0 cam_ctl: check if node has already been connected to prevent double connect
294c02a [CMake] Add new Homebrew path for Apple Silicon
b3ce317 patches: 'Use' unused variables that might generate warnings
0f1e919 Playground: have debug car spawn on key
80d6767 [Sketch] Switch to Arduino Due to allow basic STL headers to be used
cbdc491 (tag: v1.1.0) [RELEASE] v1.1.0
34e0840 [bind] Switch build logs to new API
184b004 (tag: v1.0.0) [RELEASE] 1.0.0
576e06d Raycar: add dumb visual wheel rotation
e27c70b RayCar: add more distance sensors and tweak ui
784e893 ControlPane: use node name of attachments for display
7ae520b Playground: move in barriers to ensure flatness
bee6c5b [README] Credit car model designer
4a81424 ControlPane: clear uart console on stop
99de7ed [patches] Fix narrowing cast in ArduinoRuntime
05516a9 [bind] BoardRunner: Use new build log API
e87bc96 BoardRunner: add WiFi as preproc library
5b5d871 Terreno: make clouds visible again
463068d Terreno: fix instance warnings on export
30e49f6 BoardRunner: add console logs on async build
d013ccc smartcar_shield: fix any warnings caught by -Wall -Wextra
6be4007 smartcar_shield: fix msvc compiler error and some warnings
b220269 Odometer: scale down reported values
44ee075 RayCar: Various physics improvements * Fixed a bug where velocity wasn't properly calculated when landing a jump * Added anti slip in spring logic, on angles below 20 degrees springs will point straight up instead of local space up * Added target speed field, motor force will be adjusted accordingly once desired speed has been reached to maintain said speed * Motor force direction is now calculated from the ground plane instead of local space forward * Tweaked constants for raycar
0b2db84 DebugCanvas: enable anti aliasing
1ea32a7 RayCar: lock cosmetic wheels on local y axis
e9237c5 DebugCanvas: add toggle keybind
c20660d smartcar_shield: implement SR04 polyfill
c2d6627 RayCar: set new motor force before applying force
eb39bb0 Attachments: Implement ultrasound like distance sensor
e6c9a2e Playground: fix exploding spawn
ae6d383 Playground: make nice (?)
2c36303 shooty: fix recoil direction
b462def readme: minor changes to reflect current afairs
f226d58 Merge pull request #31 from ItJustWorksTM/runner_refactor
7768420 BoardRunner/*: refactor to properly support reuse, be threaded build aware and more robust
1458f92 [CMake] Work around new MacOS Finder stupid limitations
6532c14 SketchOwner: check if file name equals the folder name
b7f7030 Create: be properly responsive with VBox
310a2f6 AnyTask: add missing .gdns
a847649 BoardRunner: use new Result utility class to convey errors better
d39a766 camera: poll controls on physics process
8d33c95 camera: improve existing and implement camera that locks on to vehicles
a455045 Merge pull request #26 from ItJustWorksTM/logo
2092ef8 [README] Credit logo designer
1ab4aec ui: add generic regular button theme
aefbc36 [Marketing] Add logo Signed-off-by: AeroStun <[email protected]>
c172a21 qfix: static_cast calculated odometer magic pins in polyfil
a5e61c9 qfix: && -> || in file exist condition
eda601b Camera: respect ui focus properly
1d78d3b RayCar: remember frozen state
0eee1b1 hud: default filepicker to ~/Documents
ba487fd qfix: add missing class register for BoardConfig
cddffd7 ControlPane: disable serial collapsible when uart is not useful
1eab46f Collapsabile: Add support for disabled state
2fa6518 project: Godot-ify BoardConfig
bf2065c Merge pull request #25 from ItJustWorksTM/sensors
a75f170 *: Provide smartcar_shield implementation w/ relavant attachments + extra fixes / cleanups
e8af3ee Raycar: reset velocity calculations of wheels on unfreeze
a372f46 Camera: release gui focus on mouse press
ddd7c4e CMake: follow upstream godot headers directory rename
2035d22 Raycar: add back fun manual control when no board is present
e18057b Entry: fix RtResources detection
84e8d6f Merge pull request #19 from ItJustWorksTM/badui
29d4223 *: Initial new UI and following required changes
33433a9 [CMake] Fix DEB package name
b1e4e01 [CMake] Add WIX packaging with Start Menu shortcu
c0a3c6b [CI] Don't require MSVC Debug dlls
bfafd0b [CI] Add Windows build
f406f69 [CMake] Instruct Godot to export with DEBUG_ENABLED
aee2ff6 [CMake] (macOS) `USE_SOURCE_PERMISSIONS`
57ea373 [CI] Add macOS build
ca5dc93 [CMake] Qfix broken exports
476544f [CI] Autorelease
322f270 [CMake] Static-link libstdc++ (and libgcc while at it) to support systems such as Ubuntu 18.04 which do not offer GLIBCXX support for std::filesystem
81994e2 [CMake] Add .desktop for Linux
c836e91 [CI] Package build and add DEB config
fefff2b [CI] Upload artifact
591e323 [CI] Fix export template paths
a487952 [CMake] Link against SMCE transitive deps via C-p C-v
6ab3dc8 [CMake] Use Boost.FS when provided by SMCE
809b5f5 [CMake] Fix SMCE inflate path
c7e3824 [CI] Qfix: filename
a35aabc [CI] Workaround Godot being bad
54ff9df godot: Add export presets for windows and mac
4d2f836 [CMake] Remove hack for missing Boost symbols
e77ca88 [CI] Add Ubuntu builder
1979a02 [CMake] Remove undesired FC_Decl GIT_SUBMODULES param
98d8e2b [CMake] Only generate the Godot bindings we use
d9cc6f9 [CMake] Eliminate useless step
a2e2aaf [CMake] Only enable LTO when supported
ca0b950 [CMake] Use FetchContent for godot-cpp
5d723b2 *: Rebase
7bc8cc6 [CMake] Correctly consume libSMCE
0f8338d [CMake] Correctly build godot-cpp and allow caching on CI
bbe6924 Merge pull request #13 from ItJustWorksTM/testing
7ed798b Since when are we doing code drops
04fe4cf Add .clang-format and format with gdformat
a4d84da Merge pull request #11 from ItJustWorksTM/testing
c14c474 *: Basics
4b70e7a license + readme
4a960f2 Initial CMake + gdnative setup
75 changes: 75 additions & 0 deletions CMake/Modules/setupSMCE.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,75 @@
#
# SetupSMCE.cmake
# Copyright 2021 ItJustWorksTM
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#

include_guard ()

set (SMCEGD_SMCE_LINKING "SOURCE")

if (SMCEGD_SMCE_LINKING STREQUAL "AUTO")
find_package (SMCE 1.4)
if (SMCE_FOUND)
if (TARGET SMCE::SMCE)
set (SMCEGD_SMCE_LINKING "SHARED")
elseif (TARGET SMCE::SMCE_static)
set (SMCEGD_SMCE_LINKING "STATIC")
endif ()
else ()
set (SMCEGD_SMCE_LINKING "SOURCE")
endif ()
message (STATUS "Resolved SMCEGD_SMCE_LINKING: AUTO -> ${SMCEGD_SMCE_LINKING}")
endif ()

if (SMCEGD_SMCE_LINKING STREQUAL "SHARED")
find_package (SMCE 1.4 REQUIRED)
if (NOT TARGET SMCE::SMCE)
message (FATAL_ERROR "Shared link requested but libSMCE shared library not installed")
endif ()
add_library (smcegd_SMCE ALIAS SMCE::SMCE)
elseif (SMCEGD_SMCE_LINKING STREQUAL "STATIC")
find_package (SMCE 1.4 REQUIRED)
if (NOT TARGET SMCE::SMCE_static)
message (FATAL_ERROR "Static link requested but libSMCE static library not installed")
endif ()
add_library (smcegd_SMCE ALIAS SMCE::SMCE_static)
elseif (SMCEGD_SMCE_LINKING STREQUAL "SOURCE")
include (FetchContent)
FetchContent_Declare (libsmce
#GIT_REPOSITORY "https://github.com/ItJustWorksTM/libSMCE"
#GIT_TAG master
GIT_REPOSITORY "https://github.com/Team-3-Software-Evolution-Project/libSMCE"
GIT_TAG Add-cmake-check
GIT_SHALLOW On
)
FetchContent_GetProperties (libsmce)
if (NOT libsmce_POPULATED)
FetchContent_Populate (libsmce)

file (READ "${libsmce_SOURCE_DIR}/CMakeLists.txt" libsmce_cmakelists)
string (REPLACE "add_dependencies (SMCE ArdRtRes)" "add_dependencies (SMCE_static ArdRtRes)" libsmce_cmakelists "${libsmce_cmakelists}")
file (WRITE "${libsmce_SOURCE_DIR}/CMakeLists.txt" "${libsmce_cmakelists}")
file (APPEND "${libsmce_SOURCE_DIR}/CMakeLists.txt" "set (SMCE_RESOURCES_ARK \"\${SMCE_RESOURCES_ARK}\" CACHE INTERNAL \"\")\n")

set (SMCE_BUILD_SHARED Off CACHE INTERNAL "")
set (SMCE_BUILD_STATIC On CACHE INTERNAL "")
set (SMCE_CXXRT_LINKING "${SMCEGD_CXXRT_LINKING}" CACHE INTERNAL "" FORCE)
set (SMCE_BOOST_LINKING "SOURCE" CACHE INTERNAL "")
add_subdirectory ("${libsmce_SOURCE_DIR}" "${libsmce_BINARY_DIR}" EXCLUDE_FROM_ALL)
endif ()
add_library (smcegd_SMCE ALIAS SMCE_static)
else ()
message (FATAL_ERROR "SMCEGD_SMCE_LINKING: Unknown final link mode ${SMCEGD_SMCE_LINKING}")
endif ()
Loading