Browse Source

Jenkins build and archive all packages (#10332)

sbg
Daniel Agar 7 years ago committed by GitHub
parent
commit
658b957888
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 3
      .ci/Jenkinsfile-compile
  2. 173
      platforms/posix/CMakeLists.txt

3
.ci/Jenkinsfile-compile

@ -206,6 +206,9 @@ def createBuildNode(Boolean archive, String docker_image, String target) { @@ -206,6 +206,9 @@ def createBuildNode(Boolean archive, String docker_image, String target) {
if (archive) {
archiveArtifacts(allowEmptyArchive: false, artifacts: 'build/**/*.px4, build/**/*.elf, build/**/*.bin', fingerprint: true, onlyIfSuccessful: true)
}
sh('make ' + target + ' package')
archiveArtifacts(allowEmptyArchive: true, artifacts: 'build/*/*.tar.bz2', fingerprint: true, onlyIfSuccessful: true)
archiveArtifacts(allowEmptyArchive: true, artifacts: 'build/*/*.deb', fingerprint: true, onlyIfSuccessful: true)
}
catch (exc) {
throw (exc)

173
platforms/posix/CMakeLists.txt

@ -71,8 +71,34 @@ else() @@ -71,8 +71,34 @@ else()
endif()
target_link_libraries(px4 PRIVATE modules__uORB)
#=============================================================================
# install
#
# TODO: extend to snapdragon
# px4 dirs
install(
DIRECTORY
${PROJECT_SOURCE_DIR}/posix-configs
${PROJECT_SOURCE_DIR}/ROMFS
${PROJECT_SOURCE_DIR}/test
${CMAKE_RUNTIME_OUTPUT_DIRECTORY}
DESTINATION
${PROJECT_NAME}
USE_SOURCE_PERMISSIONS
)
endif()
# Module Symlinks
px4_posix_generate_symlinks(
MODULE_LIST ${module_libraries}
PREFIX ${PX4_BASH_PREFIX}
TARGET px4
)
if ("${BOARD}" STREQUAL "rpi")
add_custom_target(upload
COMMAND rsync -arh --progress ${CMAKE_RUNTIME_OUTPUT_DIRECTORY} ${PX4_SOURCE_DIR}/posix-configs/rpi/*.config ${PX4_SOURCE_DIR}/ROMFS pi@"$ENV{AUTOPILOT_HOST}":/home/pi
@ -108,88 +134,83 @@ elseif ("${BOARD}" STREQUAL "sitl") @@ -108,88 +134,83 @@ elseif ("${BOARD}" STREQUAL "sitl")
include(sitl_tests)
endif()
endif()
# Module Symlinks
px4_posix_generate_symlinks(
MODULE_LIST ${module_libraries}
PREFIX ${PX4_BASH_PREFIX}
TARGET px4
)
# install
# px4 dirs
install(
DIRECTORY
${PROJECT_SOURCE_DIR}/integrationtests
${PROJECT_SOURCE_DIR}/launch
${CMAKE_RUNTIME_OUTPUT_DIRECTORY}
DESTINATION
${PROJECT_NAME}
USE_SOURCE_PERMISSIONS
)
#=============================================================================
# install
#
# px4 dirs
install(
DIRECTORY
${PROJECT_SOURCE_DIR}/integrationtests
${PROJECT_SOURCE_DIR}/launch
${PROJECT_SOURCE_DIR}/posix-configs
${PROJECT_SOURCE_DIR}/ROMFS
${PROJECT_SOURCE_DIR}/test
${CMAKE_RUNTIME_OUTPUT_DIRECTORY}
DESTINATION
${PROJECT_NAME}
USE_SOURCE_PERMISSIONS
)
# px4 files
install(
FILES
${PROJECT_SOURCE_DIR}/CMakeLists.txt
${PROJECT_SOURCE_DIR}/package.xml
DESTINATION
${PROJECT_NAME}
)
# px4 files
install(
FILES
${PROJECT_SOURCE_DIR}/CMakeLists.txt
${PROJECT_SOURCE_DIR}/package.xml
DESTINATION
${PROJECT_NAME}
)
# px4 Tools dirs
install(
DIRECTORY
${PROJECT_SOURCE_DIR}/Tools/ecl_ekf
DESTINATION
${PROJECT_NAME}/Tools
USE_SOURCE_PERMISSIONS
)
# px4 Tools dirs
install(
DIRECTORY
${PROJECT_SOURCE_DIR}/Tools/ecl_ekf
DESTINATION
${PROJECT_NAME}/Tools
USE_SOURCE_PERMISSIONS
)
# px4 Tools files
install(
PROGRAMS
${PROJECT_SOURCE_DIR}/Tools/setup_gazebo.bash
${PROJECT_SOURCE_DIR}/Tools/upload_log.py
DESTINATION
${PROJECT_NAME}/Tools
)
# px4 Tools files
install(
PROGRAMS
${PROJECT_SOURCE_DIR}/Tools/setup_gazebo.bash
${PROJECT_SOURCE_DIR}/Tools/upload_log.py
DESTINATION
${PROJECT_NAME}/Tools
)
# sitl_gazebo built plugins
install(
DIRECTORY
${PROJECT_SOURCE_DIR}/build/posix_sitl_default/build_gazebo
DESTINATION
${PROJECT_NAME}/build/posix_sitl_default
FILES_MATCHING
PATTERN "CMakeFiles" EXCLUDE
PATTERN "*.so"
)
# sitl_gazebo built plugins
install(
DIRECTORY
${PROJECT_SOURCE_DIR}/build/posix_sitl_default/build_gazebo
DESTINATION
${PROJECT_NAME}/build/posix_sitl_default
FILES_MATCHING
PATTERN "CMakeFiles" EXCLUDE
PATTERN "*.so"
)
# sitl_gazebo dirs
install(
DIRECTORY
${PROJECT_SOURCE_DIR}/Tools/sitl_gazebo/models
${PROJECT_SOURCE_DIR}/Tools/sitl_gazebo/worlds
DESTINATION
${PROJECT_NAME}/Tools/sitl_gazebo
)
# sitl_gazebo dirs
install(
DIRECTORY
${PROJECT_SOURCE_DIR}/Tools/sitl_gazebo/models
${PROJECT_SOURCE_DIR}/Tools/sitl_gazebo/worlds
DESTINATION
${PROJECT_NAME}/Tools/sitl_gazebo
)
# sitl_gazebo files
install(
FILES
${PROJECT_SOURCE_DIR}/Tools/sitl_gazebo/CMakeLists.txt
${PROJECT_SOURCE_DIR}/Tools/sitl_gazebo/package.xml
DESTINATION
${PROJECT_NAME}/Tools/sitl_gazebo
)
# sitl_gazebo files
install(
FILES
${PROJECT_SOURCE_DIR}/Tools/sitl_gazebo/CMakeLists.txt
${PROJECT_SOURCE_DIR}/Tools/sitl_gazebo/package.xml
DESTINATION
${PROJECT_NAME}/Tools/sitl_gazebo
)
elseif (("${BOARD}" STREQUAL "eagle") OR ("${BOARD}" STREQUAL "excelsior"))
# package all libs?
#install(
# FILES
# $ENV{HEXAGON_ARM_SYSROOT}/usr/lib/libadsprpc.so
# DESTINATION
# lib
# )
endif()

Loading…
Cancel
Save