Compare commits

...

168 Commits
v0.1.0 ... main

Author SHA1 Message Date
81905090b2
bump common_tmtc 2023-01-13 11:07:18 +01:00
8a9e079790
README update 2023-01-13 11:03:50 +01:00
f63ae969a7
add tmtccmd and spacepackets install scripts 2023-01-13 11:02:13 +01:00
a9ccd5e146
remove some python dependencies 2023-01-13 10:59:58 +01:00
40c7b5e7d8
Merge branch 'main' of https://egit.irs.uni-stuttgart.de/fsfw/fsfw-example-hosted 2023-01-13 10:57:53 +01:00
a68a3503a1
update dependencies 2023-01-13 10:57:38 +01:00
dd1f1050da
bump tmtccmd 2022-10-21 11:24:05 +02:00
75e592fc10
bump common_tmtc 2022-10-19 11:56:12 +02:00
f12a31b710
bump deps and call CFPD FSM 2022-10-19 11:52:30 +02:00
5e0c6b2c41
bump deps again 2022-10-17 17:29:26 +02:00
438e543203
bump dependencies 2022-10-17 17:25:42 +02:00
278b878525
bump example_common 2022-10-17 16:59:02 +02:00
5f59186ace
new CFDP and PUS TM funnel 2022-10-17 16:28:03 +02:00
45c1ba70e3
bump deps 2022-10-17 15:20:42 +02:00
9eedbe3810
start implementing closure support for CFDP 2022-10-17 12:26:18 +02:00
cafd8a7e52
bump tmtccmd dependency 2022-10-17 11:06:36 +02:00
e1d2849436
bump deps and add TODO 2022-09-16 18:36:41 +02:00
d7be5f3464
README link correction 2022-09-16 17:08:49 +02:00
3a31c175c4
bump example common 2022-09-16 17:04:51 +02:00
02046f043c
move cfdp code to example common where applicable 2022-09-16 17:03:31 +02:00
42cdca76b6 Merge branch 'mueller/cfdp-routers' of https://egit.irs.uni-stuttgart.de/fsfw/fsfw-example-hosted into mueller/cfdp-routers 2022-09-16 15:24:20 +02:00
50211e0f75
adaptions for updated fsfw code 2022-09-16 15:24:04 +02:00
f6ab970529
bump tmtccmd dep 2022-09-16 12:10:49 +02:00
6e86dfab19
repoint spacepackets 2022-09-16 12:09:42 +02:00
22ecffc30e
bump deps 2022-09-15 20:12:54 +02:00
475f8e1656
bump deps 2022-09-15 18:47:23 +02:00
9e4f2add7d
move generic handler to framework 2022-09-15 16:53:28 +02:00
886c966420
bump common_tmtc 2022-09-15 16:29:13 +02:00
a329824f8e
bump deps again 2022-09-15 16:21:41 +02:00
d4264ee75d
bump deps 2022-09-15 16:03:15 +02:00
2b2527d814
bump deps 2022-09-15 14:31:24 +02:00
3b9df4adda
second file test for larger file 2022-09-15 14:20:36 +02:00
be0aedb3ae
remove test text file 2022-09-15 14:13:43 +02:00
ec2a500e0c
bump fsfw 2022-09-15 14:08:40 +02:00
ed6a9bf82f
repoint fsfw 2022-09-14 19:31:33 +02:00
bfd54520c9
file transfer working properly 2022-09-14 19:02:11 +02:00
b76ad023a5
bump dependency 2022-09-14 17:48:35 +02:00
3265f5258c
bump deps 2022-09-14 17:41:08 +02:00
3b473d8dba
bump deps 2022-09-14 17:36:37 +02:00
64a58c65dd
end-to-end file transfer working 2022-09-14 14:01:14 +02:00
c9383ca20b
bump example_common 2022-09-13 15:31:45 +02:00
f89ca50bcb
switch to default UDP TC server, bugfix 2022-09-13 15:29:24 +02:00
9a8cca1821
bump dependencies 2022-09-13 12:00:16 +02:00
eebe169fa7
bump deps again 2022-09-12 10:08:52 +02:00
e678dae989
bump deps again 2022-09-12 09:39:48 +02:00
daa68d335a
bump dependencies 2022-09-12 09:23:30 +02:00
ecb2a751ab
bump dependencies again 2022-09-09 17:52:09 +02:00
586388b3f0
bump deps, update args handling 2022-09-09 17:45:00 +02:00
ad5169743a
bump deps 2022-09-09 15:52:24 +02:00
d1df2cd694
bump deps 2022-09-09 14:58:49 +02:00
4e93be0db3
bump deps 2022-09-09 14:46:58 +02:00
c251d2b3c8
wrap up module moving 2022-09-09 14:30:27 +02:00
f87e0854fd
move cfdp modules to common 2022-09-09 14:23:31 +02:00
e769d38d2c
implement packet passing 2022-09-09 14:14:04 +02:00
4cb00a2bb3
continue CCSDS wrapper 2022-09-09 11:07:20 +02:00
19078aa5fe
apply black to python files 2022-09-09 10:54:00 +02:00
4b511d8d30
start ccsds wrapper 2022-09-09 10:53:12 +02:00
e296554827
provide some more helper functions 2022-09-09 10:51:06 +02:00
6f9a866e9c
implement basic CFDP handler 2022-09-09 10:43:18 +02:00
87c7542015
provide function to start put request 2022-09-08 18:26:36 +02:00
3f0367fdb2
bump deps 2022-09-08 17:51:06 +02:00
b5ac8cded7
create and schedule CFDP components 2022-09-08 17:39:59 +02:00
e0837683fe
start instantiating CFDP components 2022-09-08 16:26:47 +02:00
75e0ef60ce
hmm this is tricky from an architecture standpoint 2022-09-08 15:49:18 +02:00
91711bd928
afmt 2022-09-08 12:09:52 +02:00
efe60b703b
use lambdas to avoid duplicate code 2022-09-08 12:09:24 +02:00
9b450f5049
continued pdu forwarding procedure 2022-09-08 11:53:18 +02:00
6d43fa8911
continue handler implementation 2022-09-08 11:26:29 +02:00
9c9daffbbc
some more TODOs 2022-09-07 18:40:10 +02:00
dd866790f3
this works 2022-09-07 18:38:25 +02:00
b1e704cd11
continue cfdp handler impl 2022-09-07 18:21:16 +02:00
68857b9d4e
code compiles again 2022-09-07 17:40:41 +02:00
de90bfaa34
bump fsfw 2022-09-07 15:46:18 +02:00
8f644cecea
bump fsfw 2022-09-05 17:46:41 +02:00
0459173362
bump deps 2022-09-02 17:54:36 +02:00
346bb5c7c0
bump deps 2022-09-02 14:40:05 +02:00
ca4e451e26
bump deps 2022-09-02 11:39:30 +02:00
1272fa0cca
bump deps 2022-08-31 22:54:17 +02:00
56d6de17a6
bump tmtc deps 2022-08-31 01:25:04 +02:00
88228f9f4b
bump dependencies 2022-08-30 11:21:40 +02:00
94f2dd3c01
bump tmtc dependencies 2022-08-24 15:31:23 +02:00
522e69d5da
bump deps 2022-08-18 20:50:05 +02:00
7fcea4ea07
bump deps 2022-08-18 18:34:38 +02:00
bd10232224
bump deps 2022-08-18 18:29:07 +02:00
459ee67f19
bump deps 2022-08-17 17:23:17 +02:00
3b32fa79c1
bump deps, improvement for TMTC script 2022-08-17 17:16:50 +02:00
c403abfa9f
Merge branch 'mueller/refactor-tmtc-stack' into mueller/cfdp-routers 2022-08-16 17:24:54 +02:00
8070e2da4f
bump submodules 2022-08-16 17:23:26 +02:00
0679490199
bump dependencies 2022-08-16 17:13:29 +02:00
19bcc35831
bump fsfw 2022-08-15 19:19:44 +02:00
8340d28170
bump deps 2022-08-11 10:20:35 +02:00
acbf958660
bump dependencies 2022-08-09 16:28:19 +02:00
bb833172d0
bump all dependencies 2022-08-09 15:09:54 +02:00
51f07ce7bf
run afmt 2022-08-08 12:32:22 +02:00
da04e96278
update submodules 2022-08-01 11:11:54 +02:00
5c7e47bae0 Merge branch 'mueller/refactor-tmtc-stack' of https://egit.irs.uni-stuttgart.de/fsfw/fsfw-example-hosted into mueller/refactor-tmtc-stack 2022-07-29 11:51:13 +02:00
ab4807d702
bump deps again 2022-07-29 11:50:24 +02:00
37812a033b
bump fsfw 2022-07-29 10:26:23 +02:00
f56f47ed75
bump deps 2022-07-29 09:55:34 +02:00
27be8d18dc
update tmtccmd 2022-07-28 16:41:51 +02:00
5bb72c9804
bump dependencies 2022-07-28 16:40:41 +02:00
dc107a5090
bump dependencies 2022-07-28 15:45:06 +02:00
f2e21bb359
bump deps 2022-07-28 15:37:43 +02:00
b37d801afe
bump deps again 2022-07-28 15:27:46 +02:00
f0782e4445
bump deps 2022-07-28 12:40:47 +02:00
b0cd790c78
some more stuff works now 2022-07-27 20:44:20 +02:00
dd7a9dfafd
update generated files 2022-07-27 19:42:35 +02:00
6f7be65811
fsfw update 2022-07-27 19:09:40 +02:00
4fd6f35374
ping works properly now 2022-07-27 17:58:54 +02:00
43e611950b
update for tmtc and other submodules 2022-07-27 14:41:07 +02:00
beeb699c17
update submodules 2022-07-27 11:34:02 +02:00
1a94f31d69
add test cfg 2022-07-18 11:37:54 +02:00
2d171b2c36
update .gitignore
All checks were successful
fsfw/fsfw example hosted/pipeline/head This commit looks good
2022-07-04 10:44:41 +02:00
9defef2756
bump common_tmtc dependency
All checks were successful
fsfw/fsfw example hosted/pipeline/head This commit looks good
2022-07-04 10:41:44 +02:00
84ce93a012
make commanding utility executable
All checks were successful
fsfw/fsfw example hosted/pipeline/head This commit looks good
2022-07-04 10:39:52 +02:00
b97a23ff8c
update steps to command ping
All checks were successful
fsfw/fsfw example hosted/pipeline/head This commit looks good
2022-07-04 10:39:32 +02:00
d644a45c34
use public linkage now
All checks were successful
fsfw/fsfw example hosted/pipeline/head This commit looks good
2022-07-04 10:35:45 +02:00
d07e0e6465
bump fsfw again
All checks were successful
fsfw/fsfw example hosted/pipeline/head This commit looks good
2022-07-04 10:27:26 +02:00
e6e2e1a935
bump used docker container for CI/CD
All checks were successful
fsfw/fsfw example hosted/pipeline/head This commit looks good
2022-07-04 10:23:05 +02:00
46123172ae
fix for jenkinsfile
Some checks failed
fsfw/fsfw example hosted/pipeline/head There was a failure building this commit
2022-07-04 10:10:49 +02:00
3ed1b6f9f1
update jenkinsfile
Some checks failed
fsfw/fsfw example hosted/pipeline/head There was a failure building this commit
2022-07-04 10:10:03 +02:00
a59d467e1d
link etl lib explicitely
Some checks failed
fsfw/fsfw example hosted/pipeline/head There was a failure building this commit
2022-07-04 10:04:18 +02:00
f4a346d2a8
update to newest tmtccmd version
Some checks failed
fsfw/fsfw example hosted/pipeline/head There was a failure building this commit
2022-07-03 21:00:28 +02:00
af618f5652
start updating tmtccmd
Some checks failed
fsfw/fsfw example hosted/pipeline/head There was a failure building this commit
2022-07-03 19:29:53 +02:00
77791efcbc
bump both dependencies
Some checks failed
fsfw/fsfw example hosted/pipeline/head There was a failure building this commit
2022-07-03 16:34:37 +02:00
d7923fe18b
move dependencies into separate deps folder 2022-07-03 16:33:32 +02:00
fbe10e4624
bump fsfw dependency
Some checks failed
fsfw/fsfw example hosted/pipeline/head There was a failure building this commit
2022-07-03 16:32:12 +02:00
86beb16325
bump submodules again
Some checks failed
fsfw/fsfw example hosted/pipeline/head There was a failure building this commit
2022-05-24 14:50:57 +02:00
0e0ce3dad8
bump submodules
Some checks failed
fsfw/fsfw example hosted/pipeline/head There was a failure building this commit
2022-05-24 14:28:22 +02:00
245bd4ffe8
bump submodules
Some checks failed
fsfw/fsfw example hosted/pipeline/head There was a failure building this commit
2022-05-24 13:24:56 +02:00
3a72fad821
update tmtc
Some checks failed
fsfw/fsfw example hosted/pipeline/head There was a failure building this commit
2022-05-20 11:09:13 +02:00
5700afa399
update tmtccmd
Some checks failed
fsfw/fsfw example hosted/pipeline/head There was a failure building this commit
2022-05-20 09:25:29 +02:00
7a06f615cf
re-generate retvals
Some checks failed
fsfw/fsfw example hosted/pipeline/head There was a failure building this commit
2022-05-20 09:23:14 +02:00
4173a62229
regenerate objects list
Some checks failed
fsfw/fsfw example hosted/pipeline/head There was a failure building this commit
2022-05-20 09:17:18 +02:00
8570c9e327
re-generate events
Some checks failed
fsfw/fsfw example hosted/pipeline/head There was a failure building this commit
2022-05-20 09:12:36 +02:00
df68ec141b
more storage, bumped submodules
Some checks failed
fsfw/fsfw example hosted/pipeline/head There was a failure building this commit
2022-05-20 08:59:25 +02:00
6114dddb29
delete obsolete file
Some checks failed
fsfw/fsfw example hosted/pipeline/head There was a failure building this commit
2022-05-20 08:43:22 +02:00
ab047190be
update and apply afmt
Some checks failed
fsfw/fsfw example hosted/pipeline/head There was a failure building this commit
2022-05-20 08:39:16 +02:00
da168b21ef
bump submodules
All checks were successful
fsfw/fsfw example hosted/pipeline/head This commit looks good
2022-05-20 00:20:36 +02:00
044d56e96a
update tmtc python program
Some checks failed
fsfw/fsfw example hosted/pipeline/head There was a failure building this commit
2022-05-18 23:41:05 +02:00
0a923a38a6
use TCP server by default
All checks were successful
fsfw/fsfw example hosted/pipeline/head This commit looks good
2022-05-18 16:02:42 +02:00
228c052fae Merge branch 'master' of https://egit.irs.uni-stuttgart.de/fsfw/fsfw-example-hosted
All checks were successful
fsfw/fsfw example hosted/pipeline/head This commit looks good
2022-05-18 16:00:20 +02:00
878988bb09
bump deps and C++ version 2022-05-18 15:49:29 +02:00
21b3e46a72
add lto option
All checks were successful
fsfw/fsfw example hosted/pipeline/head This commit looks good
2022-05-17 18:55:23 +02:00
99a04398af
bump example version
All checks were successful
fsfw/fsfw example hosted/pipeline/head This commit looks good
2022-05-05 20:57:49 +02:00
d2337a769c
apply auto-formatter
All checks were successful
fsfw/fsfw example hosted/pipeline/head This commit looks good
2022-05-05 20:55:48 +02:00
a9907fc7b3
build script folders lower case
All checks were successful
fsfw/fsfw example hosted/pipeline/head This commit looks good
2022-05-05 20:49:37 +02:00
3e958fd161
bump fsfw 2022-05-05 20:32:59 +02:00
832c4a1874
add clang-format file
All checks were successful
fsfw/fsfw example hosted/pipeline/head This commit looks good
2022-05-02 11:07:22 +02:00
34f76d351e
added clang toolchain file 2022-05-02 10:10:41 +02:00
1049e4072a
removed some printout
All checks were successful
fsfw/fsfw example hosted/pipeline/head This commit looks good
2022-05-02 09:38:41 +02:00
ed0077e3f1
track code styles
All checks were successful
fsfw/fsfw example hosted/pipeline/head This commit looks good
2022-05-02 09:33:39 +02:00
094fa011af
update gitignore and fsfw
All checks were successful
fsfw/fsfw example hosted/pipeline/head This commit looks good
2022-05-02 09:22:28 +02:00
7205ac6202 update README as well
All checks were successful
fsfw/fsfw example hosted/pipeline/head This commit looks good
2022-05-01 20:30:11 +02:00
37dcc69f3b bump submodules
All checks were successful
fsfw/fsfw example hosted/pipeline/head This commit looks good
2022-05-01 17:50:33 +02:00
Robin Mueller
6661dbc274 bump submodule
All checks were successful
fsfw/fsfw example hosted/pipeline/head This commit looks good
2022-04-30 19:03:38 +02:00
Robin Mueller
519bbf6fd0 mac OS changs
All checks were successful
fsfw/fsfw example hosted/pipeline/head This commit looks good
2022-04-30 18:45:25 +02:00
Robin Mueller
b8398fa81e
update example_common
All checks were successful
fsfw/fsfw example hosted/pipeline/head This commit looks good
2022-04-11 14:19:28 +02:00
Robin Mueller
1a89b8c12e
fsfw update
All checks were successful
fsfw/fsfw example hosted/pipeline/head This commit looks good
2022-04-11 14:08:46 +02:00
b78962e8e2
update submodules
All checks were successful
fsfw/fsfw example hosted/pipeline/head This commit looks good
2022-02-02 10:41:16 +01:00
4e51adf92c
small README tweak
All checks were successful
fsfw/fsfw example hosted/pipeline/head This commit looks good
2021-12-14 18:17:58 +01:00
1bc4424453
update tmtc doc and add requirements.txt
All checks were successful
fsfw/fsfw example hosted/pipeline/head This commit looks good
2021-12-14 18:16:00 +01:00
307df75a4d
added new run config
All checks were successful
fsfw/fsfw example hosted/pipeline/head This commit looks good
2021-12-14 17:54:58 +01:00
d374b972dc
update submodules
All checks were successful
fsfw/fsfw example hosted/pipeline/head This commit looks good
2021-12-14 17:50:49 +01:00
a30b161c3e
asm to normal is now commanded
All checks were successful
fsfw/fsfw example hosted/pipeline/head This commit looks good
2021-12-14 16:30:08 +01:00
f101352817
update tmtc code
All checks were successful
fsfw/fsfw example hosted/pipeline/head This commit looks good
2021-12-14 16:00:46 +01:00
df16de69c0
removed old dockerfile
All checks were successful
fsfw/fsfw example hosted/pipeline/head This commit looks good
2021-11-19 14:24:18 +01:00
0e7201d993
added automation files and updated README
Some checks failed
fsfw/fsfw example hosted/pipeline/head There was a failure building this commit
2021-11-19 14:19:21 +01:00
105 changed files with 3108 additions and 1922 deletions

7
.clang-format Normal file
View File

@ -0,0 +1,7 @@
---
BasedOnStyle: Google
IndentWidth: 2
---
Language: Cpp
ColumnLimit: 100
---

11
.gitignore vendored
View File

@ -1,8 +1,12 @@
# PyCharm
/.idea/*
!/.idea/runConfigurations
!/.idea/cmake.xml
!/.idea/codeStyles
# Python
**/.idea/*
!**/.idea/runConfigurations
__pycache__
venv
/venv
# Eclipse
@ -17,6 +21,7 @@ venv
# Build folders
/build*
/cmake-build*
_dep
_obj

6
.gitmodules vendored
View File

@ -7,12 +7,6 @@
[submodule "fsfw"]
path = fsfw
url = https://egit.irs.uni-stuttgart.de/fsfw/fsfw.git
[submodule "tmtc/tmtccmd"]
path = tmtc/tmtccmd
url = https://github.com/robamu-org/tmtccmd.git
[submodule "tmtc/common_tmtc"]
path = tmtc/common_tmtc
url = https://egit.irs.uni-stuttgart.de/fsfw/fsfw-example-tmtc-common.git
[submodule "tmtc/spacepackets"]
path = tmtc/spacepackets
url = https://github.com/robamu-org/py-spacepackets.git

11
.idea/cmake.xml generated Normal file
View File

@ -0,0 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="CMakeSharedSettings">
<configurations>
<configuration PROFILE_NAME="Debug" ENABLED="true" CONFIG_NAME="Debug" NO_GENERATOR="true" />
<configuration PROFILE_NAME="Debug Linux" ENABLED="true" GENERATION_DIR="cmake-build-debug-linux" CONFIG_NAME="Debug" GENERATION_OPTIONS="-DFSFW_OSAL=linux" NO_GENERATOR="true" />
<configuration PROFILE_NAME="Release" ENABLED="true" CONFIG_NAME="Release" NO_GENERATOR="true" />
<configuration PROFILE_NAME="Debug Clang" ENABLED="false" CONFIG_NAME="Debug" GENERATION_OPTIONS="-DCMAKE_TOOLCHAIN_FILE=cmake/ClangToolchain.cmake" />
</configurations>
</component>
</project>

14
.idea/codeStyles/Project.xml generated Normal file
View File

@ -0,0 +1,14 @@
<component name="ProjectCodeStyleConfiguration">
<code_scheme name="Project" version="173">
<clangFormatSettings>
<option name="ENABLED" value="true" />
</clangFormatSettings>
<codeStyleSettings language="CMake">
<indentOptions>
<option name="INDENT_SIZE" value="2" />
<option name="CONTINUATION_INDENT_SIZE" value="2" />
<option name="TAB_SIZE" value="2" />
</indentOptions>
</codeStyleSettings>
</code_scheme>
</component>

5
.idea/codeStyles/codeStyleConfig.xml generated Normal file
View File

@ -0,0 +1,5 @@
<component name="ProjectCodeStyleConfiguration">
<state>
<option name="USE_PER_PROJECT_SETTINGS" value="true" />
</state>
</component>

7
.idea/runConfigurations/example.xml generated Normal file
View File

@ -0,0 +1,7 @@
<component name="ProjectRunConfigurationManager">
<configuration default="false" name="example" type="CMakeRunConfiguration" factoryName="Application" REDIRECT_INPUT="false" ELEVATE="false" USE_EXTERNAL_CONSOLE="false" PASS_PARENT_ENVS_2="true" PROJECT_NAME="fsfw-example-hosted" TARGET_NAME="fsfw-example-hosted" CONFIG_NAME="Debug" RUN_TARGET_PROJECT_NAME="fsfw-example-hosted" RUN_TARGET_NAME="fsfw-example-hosted">
<method v="2">
<option name="com.jetbrains.cidr.execution.CidrBuildBeforeRunTaskProvider$BuildBeforeRunTask" enabled="true" />
</method>
</configuration>
</component>

View File

@ -1,37 +1,47 @@
################################################################################
# ##############################################################################
# CMake support for the Flight Software Framework
#
#
# Developed in an effort to replace Make with a modern build system.
#
#
# Author: R. Mueller
################################################################################
# ##############################################################################
################################################################################
# ##############################################################################
# Pre-Project preparation
################################################################################
# ##############################################################################
cmake_minimum_required(VERSION 3.13)
# set(CMAKE_VERBOSE TRUE)
set(CMAKE_SCRIPT_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake")
list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake")
set(OBSW_MAX_SCHEDULED_TCS 200)
if(NOT FSFW_OSAL)
set(FSFW_OSAL host CACHE STRING "OS for the FSFW.")
set(FSFW_OSAL
host
CACHE STRING "OS for the FSFW.")
endif()
# Project Name
project(fsfw-example-hosted C CXX)
################################################################################
option(OBSW_ENABLE_IPO "Enable IPO/LTO optimization" ON)
if(OBSW_ENABLE_IPO)
set(CMAKE_INTERPROCEDURAL_OPTIMIZATION TRUE)
endif()
# ##############################################################################
# Pre-Sources preparation
################################################################################
# ##############################################################################
# Specify the C++ standard
set(CMAKE_CXX_STANDARD 11)
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED True)
# Set names and variables
set(TARGET_NAME ${CMAKE_PROJECT_NAME})
set(TARGET_NAME ${CMAKE_PROJECT_NAME})
set(LIB_FSFW_NAME fsfw)
set(LIB_FSFW_HAL_NAME fsfw_hal)
@ -43,12 +53,9 @@ set(LIB_FSFW_HAL_PATH fsfw_hal)
set(BSP_PATH "bsp_hosted")
set(COMMON_CONFIG_PATH "${COMMON_PATH}/config")
set(FSFW_CONFIG_PATH "${BSP_PATH}/fsfwconfig")
set(FSFW_ADDITIONAL_INC_PATHS
"${COMMON_CONFIG_PATH}"
"${CMAKE_CURRENT_BINARY_DIR}"
CACHE STRING
"FSFW configuration paths"
)
set(FSFW_ADDITIONAL_INC_PATHS
"${COMMON_CONFIG_PATH}" "${CMAKE_CURRENT_BINARY_DIR}"
CACHE STRING "FSFW configuration paths")
configure_file(${COMMON_CONFIG_PATH}/commonConfig.h.in commonConfig.h)
configure_file(${FSFW_CONFIG_PATH}/FSFWConfig.h.in FSFWConfig.h)
@ -57,121 +64,97 @@ configure_file(${FSFW_CONFIG_PATH}/OBSWConfig.h.in OBSWConfig.h)
set(FSFW_ADD_MONITORING ON)
if(CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
set(WARNING_FLAGS
-Wall
-Wextra
-Wimplicit-fallthrough=1
-Wno-unused-parameter
-Wno-psabi
)
set(WARNING_FLAGS -Wall -Wextra -Wimplicit-fallthrough=1
-Wno-unused-parameter -Wno-psabi)
set(FSFW_WARNING_FLAGS ${WARNING_FLAGS})
set(FSFW_WARNING_FLAGS ${WARNING_FLAGS})
elseif(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC")
add_compile_options(/permissive- /d2SSAOptimizer-)
# To avoid nameclashes with min and max macro
add_compile_definitions(NOMINMAX)
add_compile_options(/permissive- /d2SSAOptimizer-)
# To avoid nameclashes with min and max macro
add_compile_definitions(NOMINMAX)
endif()
if(FSFW_OSAL MATCHES linux)
find_package(Threads REQUIRED)
# Hosted
find_package(Threads REQUIRED)
# Hosted
else()
if(WIN32)
elseif(UNIX)
find_package(Threads REQUIRED)
endif()
if(WIN32)
elseif(UNIX)
find_package(Threads REQUIRED)
endif()
endif()
################################################################################
# ##############################################################################
# Executable and Sources
################################################################################
# ##############################################################################
# Add executable
add_executable(${TARGET_NAME})
add_executable(${TARGET_NAME} example_common/config/common/definitions.h)
# Add subdirectories
if(LIB_OS_NAME)
add_subdirectory(${LIB_OS_NAME})
add_subdirectory(${LIB_OS_NAME})
endif()
add_subdirectory(${BSP_PATH})
add_subdirectory(${FSFW_PATH})
add_subdirectory(${COMMON_PATH})
################################################################################
# ##############################################################################
# Post-Sources preparation
################################################################################
# ##############################################################################
# Add libraries for all sources.
target_link_libraries(${TARGET_NAME} PRIVATE
${LIB_FSFW_NAME}
${LIB_OS_NAME}
# ${LIB_FSFW_HAL_NAME}
)
target_link_libraries(${TARGET_NAME} PRIVATE ${LIB_FSFW_NAME} ${LIB_OS_NAME})
# Add include paths for all sources.
target_include_directories(${TARGET_NAME} PRIVATE
${CMAKE_CURRENT_SOURCE_DIR}
${CMAKE_CURRENT_BINARY_DIR}
${FSFW_CONFIG_PATH}
)
target_include_directories(
${TARGET_NAME} PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
${CMAKE_CURRENT_BINARY_DIR} ${FSFW_CONFIG_PATH})
if(CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
target_link_options(${TARGET_NAME} PRIVATE
"-Wl,-Map=${TARGET_NAME}.map"
)
target_link_options(${TARGET_NAME} PRIVATE "-Wl,-Map=${TARGET_NAME}.map")
# Remove unused sections.
target_compile_options(${TARGET_NAME} PRIVATE
"-ffunction-sections"
"-fdata-sections"
)
# Remove unused sections.
target_compile_options(${TARGET_NAME} PRIVATE "-ffunction-sections"
"-fdata-sections")
# Removed unused sections.
target_link_options(${TARGET_NAME} PRIVATE
"-Wl,--gc-sections"
)
# Removed unused sections.
target_link_options(${TARGET_NAME} PRIVATE "-Wl,--gc-sections")
elseif(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC")
endif()
if(CMAKE_VERBOSE)
message(STATUS "Warning flags: ${WARNING_FLAGS}")
message(STATUS "Warning flags: ${WARNING_FLAGS}")
endif()
# Compile options for all sources.
target_compile_options(${TARGET_NAME} PRIVATE
${WARNING_FLAGS}
)
target_compile_options(${TARGET_NAME} PRIVATE ${WARNING_FLAGS})
if(NOT CMAKE_SIZE)
set(CMAKE_SIZE size)
if(WIN32)
set(FILE_SUFFIX ".exe")
endif()
set(CMAKE_SIZE size)
if(WIN32)
set(FILE_SUFFIX ".exe")
endif()
endif()
if(TGT_BSP)
set(TARGET_STRING "Target BSP: ${TGT_BSP}")
set(TARGET_STRING "Target BSP: ${TGT_BSP}")
else()
set(TARGET_STRING "Target BSP: Hosted")
set(TARGET_STRING "Target BSP: Hosted")
endif()
string(CONCAT POST_BUILD_COMMENT
"Build directory: ${CMAKE_BINARY_DIR}\n"
"Target OSAL: ${FSFW_OSAL}\n"
"Target Build Type: ${CMAKE_BUILD_TYPE}\n"
"${TARGET_STRING}"
)
string(CONCAT POST_BUILD_COMMENT "Build directory: ${CMAKE_BINARY_DIR}\n"
"Target OSAL: ${FSFW_OSAL}\n"
"Target Build Type: ${CMAKE_BUILD_TYPE}\n" "${TARGET_STRING}")
add_custom_command(
TARGET ${TARGET_NAME}
POST_BUILD
COMMAND ${CMAKE_SIZE} ${TARGET_NAME}${FILE_SUFFIX}
COMMENT ${POST_BUILD_COMMENT}
)
TARGET ${TARGET_NAME}
POST_BUILD
COMMAND ${CMAKE_SIZE} ${TARGET_NAME}${FILE_SUFFIX}
COMMENT ${POST_BUILD_COMMENT})
include (${CMAKE_SCRIPT_PATH}/BuildType.cmake)
include(BuildType)
set_build_type()

View File

@ -1,18 +0,0 @@
FROM ubuntu:latest
# FROM alpine:latest
RUN apt-get update && apt-get install -y cmake g++
# RUN apk add cmake make g++
WORKDIR /usr/src/app
COPY . .
RUN set -ex; \
rm -rf build-hosted; \
mkdir build-hosted; \
cd build-hosted; \
cmake -DCMAKE_BUILD_TYPE=Release -DOS_FSFW=host ..;
ENTRYPOINT ["cmake", "--build", "build-hosted"]
CMD ["-j"]
# CMD ["bash"]

View File

@ -1,4 +1,4 @@
<img align="center" src="https://egit.irs.uni-stuttgart.de/fsfw/fsfw-example-common/raw/branch/master/doc/images/FSFW_Logo_V3_bw.png" width="50%">
<img align="center" src="https://egit.irs.uni-stuttgart.de/fsfw/fsfw/raw/branch/master/misc/logo/FSFW_Logo_V3_bw.png" width="50%">
# <a id="top"></a> <a name="linux"></a> FSFW Example Application
@ -52,8 +52,17 @@ the host abstraction layer of the FSFW.
This demo provides the opportunity to to test functionality of the
FSFW on a host computer without the need of setting up external embedded hardware.
After cloning, make sure to clone and initialize the submodules
```sh
git submodule update --init
```