Minor build fixes

- Add amalgamation to server-static
- Only switch to gcc-4.8 if gcc is used
- Build coveralls only if gcc is used
- cast return value in examples (causes clang to fail otherwise)
This commit is contained in:
Stefan Profanter
2016-03-02 00:08:58 +01:00
parent c1e0e40672
commit f0170c06ea
12 changed files with 33 additions and 23 deletions
+1
View File
@@ -375,6 +375,7 @@ if(UA_BUILD_EXAMPLESERVER)
add_executable(server_static examples/server.c ${server_source})
add_executable(server examples/server.c)
if(UA_ENABLE_AMALGAMATION)
ADD_DEPENDENCIES(server_static amalgamation)
ADD_DEPENDENCIES(server amalgamation)
endif()
target_link_libraries(server ${open62541_LIBRARIES} open62541)
+1 -1
View File
@@ -253,6 +253,6 @@ int main(int argc, char *argv[]) {
#endif
UA_Client_disconnect(client);
UA_Client_delete(client);
return UA_STATUSCODE_GOOD;
return (int) UA_STATUSCODE_GOOD;
}
+2 -2
View File
@@ -18,7 +18,7 @@ int main(void) {
"opc.tcp://localhost:16664");
if(retval != UA_STATUSCODE_GOOD) {
UA_Client_delete(client);
return retval;
return (int) retval;
}
//variables to store data
@@ -49,5 +49,5 @@ int main(void) {
UA_Client_disconnect(client);
UA_Client_delete(client);
return UA_STATUSCODE_GOOD;
return (int) UA_STATUSCODE_GOOD;
}
+1 -1
View File
@@ -79,5 +79,5 @@ int main(int argc, char** argv) {
UA_Server_delete(server);
nl.deleteMembers(&nl);
return retval;
return (int) retval;
}
+1 -1
View File
@@ -32,5 +32,5 @@ int main(void) {
UA_StatusCode retval = UA_Server_run(server, &running);
UA_Server_delete(server);
nl.deleteMembers(&nl);
return retval;
return (int) retval;
}
+1 -1
View File
@@ -144,7 +144,7 @@ int main(int argc, char** argv) {
UA_Server_delete(server);
nl.deleteMembers(&nl);
return retval;
return (int) retval;
}
+1 -1
View File
@@ -46,5 +46,5 @@ int main(int argc, char** argv) {
/* ctrl-c received -> clean up */
UA_Server_delete(server);
nl.deleteMembers(&nl);
return retval;
return (int) retval;
}
+1 -1
View File
@@ -104,5 +104,5 @@ int main(int argc, char** argv) {
UA_Server_delete(server);
nl.deleteMembers(&nl);
return retval;
return (int) retval;
}
+1 -1
View File
@@ -44,5 +44,5 @@ int main(int argc, char** argv) {
UA_StatusCode retval = UA_Server_run(server, &running);
UA_Server_delete(server);
nl.deleteMembers(&nl);
return retval;
return (int) retval;
}
+1 -1
View File
@@ -47,5 +47,5 @@ int main(int argc, char** argv) {
UA_StatusCode retval = UA_Server_run(server, 1, &running);
UA_Server_delete(server);
return retval;
return (int) retval;
}
+1 -1
View File
@@ -65,5 +65,5 @@ int main(int argc, char** argv) {
UA_Server_delete(server);
nl.deleteMembers(&nl);
return retval;
return (int) retval;
}
+21 -12
View File
@@ -37,11 +37,11 @@ else
cd .. && rm build -rf
# cross compilation only with gcc
if [ ${CC} == "gcc" ]; then
if [ "$CC" = "gcc" ]; then
echo "Cross compile release build for MinGW 32 bit"
mkdir -p build && cd build
cmake -DCMAKE_TOOLCHAIN_FILE=../cmake/Toolchain-mingw32.cmake -DUA_ENABLE_AMALGAMATION=ON -DCMAKE_BUILD_TYPE=Release -DUA_BUILD_EXAMPLESERVER=ON -DUA_BUILD_EXAMPLECLIENT=ON -DUA_BUILD_EXAMPLES=ON ..
make -j8
make
zip -r open62541-win32.zip ../../doc ../../server_cert.der ../LICENSE ../AUTHORS ../README.md server_static.exe server.exe client.exe client_static.exe libopen62541.dll libopen62541.dll.a open62541.h open62541.c
cp open62541-win32.zip ..
cd .. && rm build -rf
@@ -49,7 +49,7 @@ else
echo "Cross compile release build for MinGW 64 bit"
mkdir -p build && cd build
cmake -DCMAKE_TOOLCHAIN_FILE=../cmake/Toolchain-mingw64.cmake -DUA_ENABLE_AMALGAMATION=ON -DCMAKE_BUILD_TYPE=Release -DUA_BUILD_EXAMPLESERVER=ON -DUA_BUILD_EXAMPLECLIENT=ON -DUA_BUILD_EXAMPLES=ON ..
make -j8
make
zip -r open62541-win64.zip ../../doc ../../server_cert.der ../LICENSE ../AUTHORS ../README.md server_static.exe server.exe client.exe client_static.exe libopen62541.dll libopen62541.dll.a open62541.h open62541.c
cp open62541-win64.zip ..
cd .. && rm build -rf
@@ -57,7 +57,7 @@ else
echo "Cross compile release build for 32-bit linux"
mkdir -p build && cd build
cmake -DCMAKE_TOOLCHAIN_FILE=../cmake/Toolchain-gcc-m32.cmake -DUA_ENABLE_AMALGAMATION=ON -DCMAKE_BUILD_TYPE=Release -DUA_BUILD_EXAMPLESERVER=ON -DUA_BUILD_EXAMPLECLIENT=ON ..
make -j8
make
tar -pczf open62541-linux32.tar.gz ../../doc ../../server_cert.der ../LICENSE ../AUTHORS ../README.md server_static server client_static client libopen62541.so open62541.h open62541.c
cp open62541-linux32.tar.gz ..
cd .. && rm build -rf
@@ -66,16 +66,18 @@ else
echo "Compile release build for 64-bit linux"
mkdir -p build && cd build
cmake -DCMAKE_BUILD_TYPE=Release -DUA_ENABLE_AMALGAMATION=ON -DUA_BUILD_EXAMPLESERVER=ON -DUA_BUILD_EXAMPLECLIENT=ON ..
make -j8
make
tar -pczf open62541-linux64.tar.gz ../../doc ../../server_cert.der ../LICENSE ../AUTHORS ../README.md server_static server client_static client libopen62541.so open62541.h open62541.c
cp open62541-linux64.tar.gz ..
cp open62541.h ../../ #copy single file-release
cp open62541.c ../../ #copy single file-release
cd .. && rm build -rf
echo "Upgrade to gcc 4.8"
export CXX="g++-4.8" CC="gcc-4.8"
if [ "$CC" = "gcc" ]; then
echo "Upgrade to gcc 4.8"
export CXX="g++-4.8" CC="gcc-4.8"
fi
echo "Building the C++ example"
mkdir -p build && cd build
cp ../../open62541.* .
@@ -86,16 +88,23 @@ else
echo "Compile multithreaded version"
mkdir -p build && cd build
cmake -DUA_ENABLE_MULTITHREADING=ON -DUA_BUILD_EXAMPLESERVER=ON ..
make -j8
make
cd .. && rm build -rf
#this run inclides full examples and methodcalls
echo "Debug build and unit tests (64 bit)"
mkdir -p build && cd build
cmake -DCMAKE_BUILD_TYPE=Debug -DUA_BUILD_EXAMPLES=ON -DUA_ENABLE_METHODCALLS=ON -DUA_BUILD_DEMO_NODESET=ON -DUA_BUILD_UNIT_TESTS=ON -DUA_BUILD_EXAMPLESERVER=ON -DUA_ENABLE_COVERAGE=ON ..
make -j8 && make test ARGS="-V"
make && make test ARGS="-V"
echo "Run valgrind to see if the server leaks memory (just starting up and closing..)"
(valgrind --error-exitcode=3 ./server & export pid=$!; sleep 2; kill -INT $pid; wait $pid);
coveralls --gcov /usr/bin/gcov-4.8 -E '.*\.h' -E '.*CMakeCXXCompilerId\.cpp' -E '.*CMakeCCompilerId\.c' -r ../
# only run coveralls on main repo, otherwise it fails uploading the files
echo "-> Current repo: ${TRAVIS_REPO_SLUG}"
if ([ "$CC" = "gcc-4.8" ] || [ "$CC" = "gcc" ]) && [ "${TRAVIS_REPO_SLUG}" = "open62541/open62541" ]; then
echo " Building coveralls for ${TRAVIS_REPO_SLUG}"
coveralls --gcov /usr/bin/gcov-4.8 -E '.*\.h' -E '.*CMakeCXXCompilerId\.cpp' -E '.*CMakeCCompilerId\.c' -r ../
else
echo " Skipping coveralls since not gcc and/or ${TRAVIS_REPO_SLUG} is not the main repo"
fi
cd .. && rm build -rf
fi
fi