diff --git a/CMakeLists.txt b/CMakeLists.txt index ce7296e..01e6313 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -41,6 +41,9 @@ endif() target_include_directories(${PROJECT_NAME} PRIVATE ${CURL_INCLUDE_DIRS}) +find_package(Backtrace REQUIRED) +target_link_libraries(${PROJECT_NAME} PRIVATE ${Backtrace_LIBRARIES}) + target_compile_options(${PROJECT_NAME} PRIVATE "-fno-exceptions" "-fno-rtti" diff --git a/ci/codebuild/alpine-3.15.yml b/ci/codebuild/alpine-3.15.yml new file mode 100644 index 0000000..6954b97 --- /dev/null +++ b/ci/codebuild/alpine-3.15.yml @@ -0,0 +1,16 @@ +version: 0.2 +# This uses the docker image specified in ci/docker/alpine-linux-3.15 +phases: + pre_build: + commands: + - pip install awscli + - ci/codebuild/build-cpp-sdk.sh + build: + commands: + - echo Build started on `date` + - ci/codebuild/build.sh -DCMAKE_EXPORT_COMPILE_COMMANDS=ON -DENABLE_TESTS=ON -DTEST_RESOURCE_PREFIX=alpine315 + - ci/codebuild/run-tests.sh aws-lambda-package-lambda-test-fun alpine315 + post_build: + commands: + - echo Build completed on `date` + diff --git a/ci/docker/alpine-linux-3.15 b/ci/docker/alpine-linux-3.15 new file mode 100644 index 0000000..8b0837e --- /dev/null +++ b/ci/docker/alpine-linux-3.15 @@ -0,0 +1,5 @@ +FROM alpine:3.15 + +RUN apk add --no-cache g++ cmake git bash py3-pip libexecinfo-dev ninja curl-dev zlib-dev zip + +RUN git clone --recurse-submodules https://github.com/aws/aws-sdk-cpp.git diff --git a/ci/docker/alpine-linux-3.8 b/ci/docker/alpine-linux-3.8 deleted file mode 100644 index a042e4c..0000000 --- a/ci/docker/alpine-linux-3.8 +++ /dev/null @@ -1,5 +0,0 @@ -FROM alpine:latest - -RUN apk update; apk add g++ cmake git ninja curl-dev zlib-dev - -RUN git clone https://github.com/aws/aws-sdk-cpp.git diff --git a/packaging/packager b/packaging/packager index f5a3c8b..0c4e749 100755 --- a/packaging/packager +++ b/packaging/packager @@ -61,7 +61,8 @@ function pluck_so_files() { } function package_libc_alpine() { - if grep --fixed-strings "Alpine Linux" < /etc/os-release > /dev/null; then + # -F matches a fixed string rather than a regex (grep that comes with busybox doesn't know --fixed-strings) + if grep -F "Alpine Linux" < /etc/os-release > /dev/null; then if type apk > /dev/null 2>&1; then apk info --contents musl 2>/dev/null | pluck_so_files | sed 's/^/\//' fi