nasa / CFS_IO_LIB

19 stars 9 forks source link

doesn't build by default with cFS 6.8 #6

Open mogar opened 4 years ago

mogar commented 4 years ago

The new cFS version 6.8 turns on a lot more error checking for the build than prior versions of cFS used. Because of this, several issues int io_lib cause the build to fail.

io_lib_init issues:

[ 60%] Building C object apps/io_lib/CMakeFiles/io_lib.dir/fsw/src/io_lib_init.c.o
<cfs>/apps/io_lib/fsw/src/io_lib_init.c: In function ‘IO_LibInit’:
<cfs>/apps/io_lib/fsw/src/io_lib_init.c:50:30: error: too many arguments for format [-Werror=format-extra-args]
         CFE_ES_WriteToSysLog("IO_Lib Init failed.\n", iStatus);
                              ^~~~~~~~~~~~~~~~~~~~~~~
cc1: all warnings being treated as errors
apps/io_lib/CMakeFiles/io_lib.dir/build.make:62: recipe for target 'apps/io_lib/CMakeFiles/io_lib.dir/fsw/src/io_lib_init.c.o' failed
make[7]: *** [apps/io_lib/CMakeFiles/io_lib.dir/fsw/src/io_lib_init.c.o] Error 1
CMakeFiles/Makefile2:607: recipe for target 'apps/io_lib/CMakeFiles/io_lib.dir/all' failed

tm_sdlp issues:

[ 63%] Building C object apps/io_lib/CMakeFiles/io_lib.dir/fsw/src/services/tm_sdlp.c.o
<cfs>/apps/io_lib/fsw/src/services/tm_sdlp.c: In function ‘TM_SDLP_CompleteFrame’:
<cfs>/apps/io_lib/fsw/src/services/tm_sdlp.c:552:11: error: variable ‘vcFrameCnt’ set but not used [-Werror=unused-but-set-variable]
     uint8 vcFrameCnt = 0;
           ^~~~~~~~~~
<cfs>/apps/io_lib/fsw/src/services/tm_sdlp.c: In function ‘TM_SDLP_AddData’:
<cfs>/apps/io_lib/fsw/src/services/tm_sdlp.c:696:47: error: pointer of type ‘void *’ used in arithmetic [-Werror=pointer-arith]
     CFE_PSP_MemCpy((void *) pFrameInfo->frame + pFrameInfo->currentDataOffset,
                                               ^
cc1: all warnings being treated as errors
apps/io_lib/CMakeFiles/io_lib.dir/build.make:206: recipe for target 'apps/io_lib/CMakeFiles/io_lib.dir/fsw/src/services/tm_sdlp.c.o' failed
make[7]: *** [apps/io_lib/CMakeFiles/io_lib.dir/fsw/src/services/tm_sdlp.c.o] Error 1
CMakeFiles/Makefile2:607: recipe for target 'apps/io_lib/CMakeFiles/io_lib.dir/all' failed

trans_rs422 issues:

[ 61%] Building C object apps/io_lib/CMakeFiles/io_lib.dir/fsw/src/services/trans_rs422.c.o
<cfs>/apps/io_lib/fsw/src/services/trans_rs422.c: In function ‘IO_TransRS422Init’:
<cfs>/apps/io_lib/fsw/src/services/trans_rs422.c:128:9: error: implicit declaration of function ‘bzero’ [-Werror=implicit-function-declaration]
         bzero(&setAttr, sizeof(setAttr));
         ^~~~~
<cfs>/apps/io_lib/fsw/src/services/trans_rs422.c:153:9: error: implicit declaration of function ‘cfsetspeed’; did you mean ‘cfsetispeed’? [-Werror=implicit-function-declaration]
         cfsetspeed(&setAttr, baudRate);
         ^~~~~~~~~~
         cfsetispeed
cc1: all warnings being treated as errors
apps/io_lib/CMakeFiles/io_lib.dir/build.make:254: recipe for target 'apps/io_lib/CMakeFiles/io_lib.dir/fsw/src/services/trans_rs422.c.o' failed
make[7]: *** [apps/io_lib/CMakeFiles/io_lib.dir/fsw/src/services/trans_rs422.c.o] Error 1
CMakeFiles/Makefile2:607: recipe for target 'apps/io_lib/CMakeFiles/io_lib.dir/all' failed

trans_udp issues:

[ 61%] Building C object apps/io_lib/CMakeFiles/io_lib.dir/fsw/src/services/trans_udp.c.o
<cfs>/apps/io_lib/fsw/src/services/trans_udp.c: In function ‘IO_TransUdpConfigSocket’:
<cfs>/apps/io_lib/fsw/src/services/trans_udp.c:125:18: error: implicit declaration of function ‘inet_aton’; did you mean ‘inet_pton’? [-Werror=implicit-function-declaration]
         status = inet_aton(&config->cAddr[0], (struct in_addr *) &uiAddr);
                  ^~~~~~~~~
                  inet_pton
cc1: all warnings being treated as errors
apps/io_lib/CMakeFiles/io_lib.dir/build.make:302: recipe for target 'apps/io_lib/CMakeFiles/io_lib.dir/fsw/src/services/trans_udp.c.o' failed
make[7]: *** [apps/io_lib/CMakeFiles/io_lib.dir/fsw/src/services/trans_udp.c.o] Error 1
jtovias commented 4 years ago

CFS_IO_LIB is being updated for cFS 6.8. The unit tests are being converted over to the new ut_assert that cFS 6.8 uses.

jeffreyscottgraham commented 3 years ago

Status on this?