Skip to content
Closed
Show file tree
Hide file tree
Changes from 14 commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 8 additions & 7 deletions .github/workflows/.build-osx.yml
Original file line number Diff line number Diff line change
Expand Up @@ -43,21 +43,22 @@ jobs:
cppunit \
autoconf \
automake \
libgeotiff
libgeotiff \
ninja \
go
shell: bash
- name: Build hyrax-dependencies
run: |
export prefix=$HOME/install
make for-travis -j16
shell: bash
env:
extra_targets: "aws_s2n_tls aws_lc"
- name: List built dependencies
run: make list-built
shell: bash
- name: Confirm all dependencies are built
run: |
num_deps=$(find . -name '*-install-stamp' | wc -l)
if [ "$num_deps" != 14 ]; then
echo "Unexpected number of dependencies installed: Should be 14, found $num_deps."
fi

run: ./travis/check-installed $EXPECTED_DEPS_COUNT
shell: bash
env:
EXPECTED_DEPS_COUNT: 14
12 changes: 9 additions & 3 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -44,6 +44,12 @@ addons:
- libcppunit-dev
- libicu-dev
- libsqlite3-dev
- ninja-build
snaps:
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

'snaps?' I should Google this. ;-)

# apt-install of go is stale; official option for snaps as alternative
# package manager: https://go.dev/wiki/Ubuntu
- name: go
confinement: classic

stages:
- name: build
Expand All @@ -63,15 +69,15 @@ jobs:
script:
- echo "# ubuntu-focal - Expecting to build and install $EXPECTED_DEPS_COUNT dependencies." >&2
- export prefix=$HOME/install
- export EXPECTED_DEPS_COUNT=13
- export extra_targets="aws_s2n_tls"
- export EXPECTED_DEPS_COUNT=14
- export extra_targets="aws_s2n_tls aws_lc"
- make -j16 for-travis
- make list-built
- export ARTIFACT=ubuntu
- mkdir -p $TRAVIS_BUILD_DIR/package
- tar -C $HOME -czvf $TRAVIS_BUILD_DIR/package/hyrax-dependencies-build.tar.gz install
- ./travis/check-installed $EXPECTED_DEPS_COUNT
-

# mkdir returns true if the directory already exists. This dir is used in 'before_deploy'.
- stage: build
name: "rocky8"
Expand Down
47 changes: 44 additions & 3 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,10 @@ aws_cdk_tag=1.11.665

aws_s2n_tls=aws_s2n_tls
aws_s2n_tls_tag=v1.6.1
# There is technically a dist - but it requires some extra script shenanigans, so we choose to pull from the tag instead

aws_lc=aws_lc
aws_lc_tag=v1.65.0
# There is no dist - we pull this from github using a tag

bison=bison-3.3
Expand Down Expand Up @@ -84,7 +88,8 @@ stare_dist=$(stare).tar.bz2
# Removed sqlite3 since it's part of OSX and Linux. jhrg 10/20/25
.PHONY: $(deps)
deps = bison jpeg openjpeg gridfields hdf4 \
hdfeos hdf5 netcdf4 proj gdal stare aws_cdk $(extra_targets) list-built
hdfeos hdf5 netcdf4 proj gdal stare \
aws_cdk $(extra_targets) list-built

# Removed lots of stuff because for Docker builds, we can use any decent
# yum/rpm repo (e.g. EPEL). jhrg 8/18/21
Expand Down Expand Up @@ -193,11 +198,11 @@ aws_cdk-configure-stamp: $(aws_cdk_src)-stamp
mkdir -p $(aws_cdk_src)/build
(cd $(aws_cdk_src)/build \
&& cmake .. -DCMAKE_BUILD_TYPE=Debug -DCMAKE_INSTALL_PREFIX=$(prefix)/deps -DBUILD_ONLY="s3" \
-DAUTORUN_UNIT_TESTS=OFF $(CMAKE_FLAGS))
-DAUTORUN_UNIT_TESTS=OFF -DBUILD_SHARED_LIBS=ON -DAWS_CUSTOM_LIB_CRYPTO_PATH=$(prefix)/deps $(CMAKE_FLAGS))
echo timestamp > aws_cdk-configure-stamp

# We might want to use for development cmake --build . --config=Debug
aws_cdk-compile-stamp: aws_cdk-configure-stamp
aws_cdk-compile-stamp: aws_cdk-configure-stamp aws_lc-install-stamp
(cd $(aws_cdk_src)/build && cmake --build . --config=Debug --parallel)
echo timestamp > aws_cdk-compile-stamp

Expand Down Expand Up @@ -251,6 +256,42 @@ aws_s2n_tls-really-clean: aws_s2n_tls-clean
.PHONY: aws_s2n_tls
aws_s2n_tls: aws_s2n_tls-install-stamp

# AWS lc (conditionally required by AWS SDK)
aws_lc_src=$(src)/$(aws_lc)-$(aws_lc_tag)
aws_lc_prefix=$(prefix)/deps

$(aws_lc_src)-stamp:
git clone --depth 1 https://github.com/aws/aws-lc.git --branch $(aws_lc_tag) $(aws_lc_src)
echo timestamp > $(aws_lc_src)-stamp

aws_lc-configure-stamp: $(aws_lc_src)-stamp
mkdir -p $(aws_lc_src)/build
(cd $(aws_lc_src)/build \
&& cmake .. -GNinja -B . \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_PREFIX=$(prefix)/deps)
echo timestamp > aws_lc-configure-stamp

aws_lc-compile-stamp: aws_lc-configure-stamp
(cd $(aws_lc_src)/build && ninja -C .)
# ninja -C . run_tests # Fails! Not necessarily needed?
echo timestamp > aws_lc-compile-stamp

aws_lc-install-stamp: aws_lc-compile-stamp
(cd $(aws_lc_src)/build && ninja install)
echo timestamp > aws_lc-install-stamp

aws_lc-clean:
-rm aws_lc-*-stamp
-(cd $(aws_lc_src)/build && ninja clean)

aws_lc-really-clean: aws_lc-clean
-rm $(src)/$(aws_lc)-*-stamp
-rm -rf $(aws_lc_src)

.PHONY: aws_lc
aws_lc: aws_lc-install-stamp

# JPEG
jpeg_src=$(src)/$(jpeg)
jpeg_prefix=$(prefix)/deps
Expand Down
Loading