Skip to content

Commit c397100

Browse files
committed
Integrate LiveUpdate and install properly for each arch
1 parent fc1d90d commit c397100

20 files changed

Lines changed: 32 additions & 793 deletions

CMakeLists.txt

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -125,6 +125,18 @@ endif()
125125
set(BUNDLE_LOC "" CACHE STRING "Local path of bundle with pre-compile libraries")
126126
include(${CMAKE_CURRENT_SOURCE_DIR}/cmake/cross_compiled_libraries.txt)
127127

128+
# object format needs to be set BEFORE enabling ASM
129+
# see: https://cmake.org/Bug/bug_relationship_graph.php?bug_id=13166
130+
if ("${ARCH}" STREQUAL "i686")
131+
set(CMAKE_ASM_NASM_OBJECT_FORMAT "elf")
132+
set(OBJCOPY_TARGET "elf32-i386")
133+
else()
134+
set(CMAKE_ASM_NASM_OBJECT_FORMAT "elf64")
135+
set(OBJCOPY_TARGET "elf64-x86-64")
136+
endif()
137+
138+
enable_language(ASM_NASM)
139+
128140
# Botan Crypto & TLS
129141
# Note: Include order matters!
130142
include(${CMAKE_CURRENT_SOURCE_DIR}/cmake/botan.cmake)
@@ -187,6 +199,11 @@ if(libmana)
187199
add_subdirectory(lib/mana)
188200
endif(libmana)
189201

202+
option(libliveupdate "Build and install LiveUpdate" ON)
203+
if(libliveupdate)
204+
add_subdirectory(lib/LiveUpdate)
205+
endif(libliveupdate)
206+
190207
#
191208
# Installation
192209
#

lib/LiveUpdate/CMakeLists.txt

Lines changed: 10 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -1,30 +1,14 @@
11
cmake_minimum_required(VERSION 2.8.9)
2-
# default IncludeOS location #FIXME#
3-
if (NOT DEFINED ENV{INCLUDEOS_PREFIX})
4-
set(ENV{INCLUDEOS_PREFIX} /usr/local)
5-
endif()
6-
include($ENV{INCLUDEOS_PREFIX}/includeos/pre.service.cmake)
7-
project(service)
82

9-
set(SERVICE_NAME "Live Update")
10-
set(BINARY "LiveUpdate")
11-
set(SOURCES
12-
service.cpp test_boot.cpp test_all.cpp test_tcp.cpp
13-
)
14-
set(LOCAL_INCLUDES ".")
15-
16-
set(LIBRARIES ${CMAKE_BINARY_DIR}/libliveupdate.a)
3+
add_definitions(-DARCH_${ARCH})
4+
add_definitions(-DARCH="${ARCH}")
175

18-
set(DRIVERS
19-
virtionet
20-
#vmxnet3
21-
#solo5net
22-
#boot_logger
23-
#heap_debugging
24-
)
25-
26-
# include service build script
27-
include($ENV{INCLUDEOS_PREFIX}/includeos/post.service.cmake)
6+
include_directories(${INCLUDEOS_ROOT}/api/posix)
7+
include_directories(${LIBCXX_INCLUDE_DIR})
8+
include_directories(${NEWLIB_INCLUDE_DIR})
9+
include_directories(${INCLUDEOS_ROOT}/src/include)
10+
include_directories(${INCLUDEOS_ROOT}/api)
11+
include_directories(${INCLUDEOS_ROOT}/mod/GSL/)
2812

2913
add_custom_command(
3014
OUTPUT hotswap64.bin
@@ -39,8 +23,5 @@ add_library(liveupdate STATIC
3923
serialize_tcp.cpp hotswap64_blob.asm
4024
)
4125
add_dependencies(liveupdate hotswap64)
42-
target_link_libraries(service liveupdate)
43-
install(TARGETS liveupdate DESTINATION lib)
44-
45-
# Uncomment this to build vanilla:
46-
#set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -msse4.2")
26+
install(TARGETS liveupdate DESTINATION includeos/${ARCH}/lib)
27+
install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/liveupdate.hpp DESTINATION includeos/include RENAME liveupdate)

lib/LiveUpdate/b.sh

Lines changed: 0 additions & 3 deletions
This file was deleted.

lib/LiveUpdate/build_verify.sh

Lines changed: 0 additions & 5 deletions
This file was deleted.

lib/LiveUpdate/common.hpp

Lines changed: 0 additions & 23 deletions
This file was deleted.

lib/LiveUpdate/hw_timer.hpp

Lines changed: 0 additions & 27 deletions
This file was deleted.

lib/LiveUpdate/install.sh

Lines changed: 0 additions & 3 deletions
This file was deleted.

lib/LiveUpdate/run.sh

Lines changed: 0 additions & 6 deletions
This file was deleted.

lib/LiveUpdate/server.hpp

Lines changed: 0 additions & 39 deletions
This file was deleted.

lib/LiveUpdate/service.cpp

Lines changed: 0 additions & 75 deletions
This file was deleted.

0 commit comments

Comments
 (0)