Skip to content

Commit 45eedc6

Browse files
authored
Merge pull request #62 from nasa/integration-candidate
Integration Candidate 2020-03-25
2 parents 4ed9063 + 8d343f9 commit 45eedc6

File tree

4 files changed

+49
-17
lines changed

4 files changed

+49
-17
lines changed

.travis.yml

Lines changed: 43 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,35 +1,55 @@
1+
os: linux
12
dist: bionic
2-
sudo: required
3-
language:
4-
- c
3+
language: c
54
compiler:
65
- gcc
76
addons:
87
apt:
98
sources:
109
- ubuntu-toolchain-r-test
1110
packages:
12-
- cmake
11+
- cmake cppcheck doxygen lcov graphviz
1312
env:
1413
global:
1514
- SIMULATION=native
1615
- ENABLE_UNIT_TESTS=true
17-
matrix:
16+
- DEPLOY_DIR=$TRAVIS_BUILD_DIR/deploy
17+
jobs:
1818
- BUILDTYPE=release OMIT_DEPRECATED=true
1919
- BUILDTYPE=release OMIT_DEPRECATED=false
2020
- BUILDTYPE=debug OMIT_DEPRECATED=true
2121
- BUILDTYPE=debug OMIT_DEPRECATED=false
2222

23-
before_install:
24-
- sudo apt-get install cppcheck doxygen lcov graphviz
23+
# Build the pdfs and copy to the deploy directory
24+
before_deploy:
25+
- sudo apt-get install texlive-latex-base texlive-fonts-recommended texlive-fonts-extra texlive-latex-extra
26+
- mkdir $DEPLOY_DIR
27+
- cd $TRAVIS_BUILD_DIR/build/doc/users_guide/latex
28+
- make > build.txt
29+
- cp refman.pdf $DEPLOY_DIR/cFE_Users_Guide.pdf
30+
- cd $TRAVIS_BUILD_DIR/build/doc/osalguide/latex
31+
- make > build.txt
32+
- cp refman.pdf $DEPLOY_DIR/OSAL_Users_Guide.pdf
33+
- cd $TRAVIS_BUILD_DIR
34+
35+
# Deploy documentation to github pages
36+
deploy:
37+
provider: pages
38+
strategy: git
39+
cleanup: false
40+
token: $GITHUB_TOKEN # Set in personal repository, as a secure variable
41+
keep_history: false
42+
local_dir: $DEPLOY_DIR
43+
on:
44+
condition: $BUILDTYPE = release && $OMIT_DEPRECATED = false
45+
edge: true
2546

2647
script:
2748
# Check versions
2849
- cppcheck --version
2950
# Setup standard permissive build
3051
- cp cfe/cmake/Makefile.sample Makefile
3152
- cp -r cfe/cmake/sample_defs sample_defs
32-
- sed -i 's/undef OSAL_DEBUG_PERMISSIVE_MODE/define OSAL_DEBUG_PERMISSIVE_MODE/g' sample_defs/default_osconfig.h
3353
# Static code analysis
3454
# Below is intent but fails - exit code bug in cppcheck 1.82
3555
# - cppcheck --force --inline-suppr --quiet --error-exitcode=1 .
@@ -59,6 +79,7 @@ script:
5979
cat make_doc_stderr.txt
6080
exit -1
6181
fi
82+
# Eventually enforce no doxygen warnings
6283
- make usersguide > make_usersguide_stdout.txt 2> make_usersguide_stderr.txt
6384
- |
6485
if [[ -s make_usersguide_stderr.txt ]]; then
@@ -67,6 +88,13 @@ script:
6788
cat make_usersguide_stderr.txt
6889
exit -1
6990
fi
91+
- |
92+
if [[ -s build/doc/warnings.log ]]; then
93+
echo "You must fix doxygen warnings for \"usersguide\" before submitting a pull request"
94+
echo ""
95+
cat build/doc/warnings.log
96+
exit -1
97+
fi
7098
- make osalguide > make_osalguide_stdout.txt 2> make_osalguide_stderr.txt
7199
- |
72100
if [[ -s make_osalguide_stderr.txt ]]; then
@@ -75,7 +103,13 @@ script:
75103
cat make_osalguide_stderr.txt
76104
exit -1
77105
fi
78-
# Eventually enforce no doxygen warnings
106+
- |
107+
if [[ -s build/doc/warnings.log ]]; then
108+
echo "You must fix doxygen warnings for \"osalguide\" before submitting a pull request"
109+
echo ""
110+
cat build/doc/warnings.log
111+
exit -1
112+
fi
79113
# List cpu1 for core binary
80114
- ls build/exe/cpu1/
81115
# Start cFE (pipe output to file), pause, send reset command, check outputs

README.md

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -67,24 +67,22 @@ Copy in the default makefile and definitions:
6767
cp cfe/cmake/Makefile.sample Makefile
6868
cp -r cfe/cmake/sample_defs sample_defs
6969

70-
If running on a standard linux build as a normal user, define OSAL_DEBUG_PERMISSIVE_MODE for best effort message queue depth and task priorities.
71-
72-
sed -i 's/undef OSAL_DEBUG_PERMISSIVE_MODE/define OSAL_DEBUG_PERMISSIVE_MODE/g' sample_defs/default_osconfig.h
73-
7470
## Build and Run
7571

7672
The cFS Framework including sample applications will build and run on the pc-linux platform support package (should run on most Linux distributions), via the steps described in https://github.com/nasa/cFE/tree/master/cmake/README.md. Quick-start is below:
7773

78-
To prep, compile, and run (from cFS directory above):
74+
To prep, compile, and run on the host (from cFS directory above) as a normal user (best effort message queue depth and task priorities):
7975

80-
make prep
76+
make SIMULATION=native prep
8177
make
8278
make install
8379
cd build/exe/cpu1/
8480
./core-cpu1
8581

8682
Should see startup messages, and CFE_ES_Main entering OPERATIONAL state. Note the code must be executed from the build/exe/cpu1 directory to find the startup script and shared objects.
8783

84+
Note: The steps above are for a debug, permissive mode build and includes deprecated elements. For a release build, recommendation is `make BUILDTYPE=release OMIT_DEPRECATED=true prep`. Unit tests can be added with `ENABLE_UNIT_TESTS=true`, run with `make test`, and coverage reported with `make lcov`.
85+
8886
## Send commands, receive telemetry
8987

9088
The cFS-GroundSystem tool can be used to send commands and receive telemetry (see https://github.com/nasa/cFS-GroundSystem/tree/master/Guide-GroundSystem.txt, the Guide-GroundSystem.txt). Note it depends on PyQt4 and PyZMQ:

0 commit comments

Comments
 (0)