Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix: Simplify / update build instructions. #713

Merged
merged 8 commits into from
Jul 13, 2021

Conversation

lizroth
Copy link
Contributor

@lizroth lizroth commented Jun 11, 2021

Issue #, if available:

Description of changes: Update build instructions. Reference the AWS SDK for C++ build instructions where possible to deduplicate setup. Simplify the steps for the aws-c-common branch.

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

Check any applicable:

  • Were any files moved? Moving files changes their URL, which breaks all hyperlinks to the files.

@lizroth lizroth requested review from juneb and alex-chew June 11, 2021 20:48
README.md Outdated Show resolved Hide resolved
README.md Outdated Show resolved Hide resolved
README.md Outdated Show resolved Hide resolved
README.md Outdated Show resolved Hide resolved
README.md Outdated Show resolved Hide resolved
README.md Outdated

mkdir install && mkdir build && cd build
git clone https://github.com/Microsoft/vcpkg.git
cd vcpkg && .\bootstrap-vcpkg.bat
.\vcpkg install curl:x64-windows openssl:x64-windows && cd ..

#### Windows: (Option 1) C and C++ build dependencies
You may also want to integrate vcpkg and Visual Studio: `.\vcpkg\vcpkg integrate install`
Copy link
Contributor

Choose a reason for hiding this comment

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

Does the specified command do the integration? If so:

To integrate vcpkg and Visual Studio (optional), use the following command: .\vcpkg\vcpkg integrate install

Copy link
Contributor Author

Choose a reason for hiding this comment

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

This is one of the things that I was unhappy with and am fixing, so hold this thought please for the next round

README.md Outdated Show resolved Hide resolved
README.md Outdated
Both aws-sdk-cpp and aws-c-common are required, but the installation of aws-sdk-cpp will install
aws-c-common for you.
Build the AWS SDK for C++. This installs the aws-c-common dependency too. If you only need AWS SDK for C++ to use the
AWS Encryption SDK, you have the option to build only the AWS KMS SDK. Remove `-DBUILD_ONLY=kms` to build the entire AWS SDK for C++.
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
AWS Encryption SDK, you have the option to build only the AWS KMS SDK. Remove `-DBUILD_ONLY=kms` to build the entire AWS SDK for C++.
AWS Encryption SDK, you can build only the AWS KMS SDK. To build the entire AWS SDK for C++, delete `-DBUILD_ONLY=kms` from ???.

To do A, do B. (for left-to-right languages)

README.md Outdated Show resolved Hide resolved
README.md Outdated Show resolved Hide resolved
lizroth and others added 3 commits June 16, 2021 12:36
Co-authored-by: June Blender <juneb@users.noreply.github.com>
Be explicit about static or dynamic libraries throughout.
Co-authored-by: June Blender <juneb@users.noreply.github.com>
Copy link
Contributor Author

@lizroth lizroth left a comment

Choose a reason for hiding this comment

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

Most feedback has been incorporated -- a couple of follow up comments/questions to your feedback so far. Thank you!

README.md Show resolved Hide resolved
README.md Outdated

### Building on Windows
**Note**: See the docker-images folder for some Windows build recipes that automate many of these steps.
Copy link
Contributor Author

Choose a reason for hiding this comment

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

https://github.com/aws/aws-encryption-sdk-c/tree/master/docker-images

Requiring customers to use Docker in particular creates another dependency to get started working with the SDK. These generic instructions guide customers through bootstrapping their project generically on any system.

I'll add a link

README.md Show resolved Hide resolved
@texastony
Copy link
Contributor

According to Alex Chew, this PR is awaiting approval from June due to Doc Impact.

We have an open issue (#717) that is related to this.

Also, we will have to manually rebase this.

@texastony
Copy link
Contributor

Errr... #127 may not be related... it appears the requester has successfully built the library, but cannot use the library in any other project... which is interesting...

@texastony
Copy link
Contributor

I also do not understand why the macOS build and test actions are not firing... my only guess is that it needs approval from June/any requested review before they are run, bother.

@feliperodri
Copy link
Collaborator

cc. @alex-chew

@alex-chew alex-chew merged commit a4cf60e into aws:master Jul 13, 2021
alex-chew added a commit to alex-chew/aws-encryption-sdk-c that referenced this pull request Oct 20, 2021
Co-authored-by: June Blender <juneb@users.noreply.github.com>
Co-authored-by: Alex Chew <alex-chew@users.noreply.github.com>
alex-chew added a commit that referenced this pull request Oct 20, 2021
#731)

* Add CBMC CI configuration (#709)

This commit adds a configuration file for the "CBMC Proofs" CI check.
This is in preparation for adding some custom check-out steps later.

* Use private submodules before CI run (#711)

* chore: Use continuous-integration environment for private submodule access (#714)

Co-authored-by: Robin Salkeld <salkeldr@amazon.com>

* chore: Add support policy (#720)

* Upgrade CBMC proof tools: starter kit and Litani 1.10.0 (#722)

* Upgrade proof tool submodules

This commit advances Litani to release 1.10.0, and the starter kit to
the tip-of-tree. This brings the following improvements:

- Profiling
    - Litani measures the memory usage of the CBMC safety checking and
      coverage checking jobs
    - The dashboard includes box-and-whisker diagrams for memory use per
      proof
    - The dashboard includes a graph of how many parallel jobs are
      running over the whole run, making it easy to choose a CI machine
      with enough parallelism
    - It is now possible to designate particular proofs as "EXPENSIVE";
      Litani runs expensive proofs serially, ensuring that they do not
      over-consume resources like RAM.

- UI improvements
    - Each pipeline page includes a table of contents
    - Each pipeline page includes a dependency graph of the pipeline
    - Each job on the pipeline page has a hyperlink to that job
    - The terminal output is now less noisy

* Change cbmc-batch.yaml to cbmc-proof.txt

This makes the proof layout consistent with the starter kit, which will
allow us to use a generic run script in a future commit. Putting this
in commit by itself because the diff is huge and not worth reading (just
moving some files and changing two lines in the runscript).

* Symlink run-cbmc-proofs.py to starter kit

The run script is now a symbolic link into the starter kit submodule,
meaning that it will be updated whenever the starter kit is. This is
done iso that E-SDK doesn't carry custom modifications to the run script
unless necessary; previous commits have made the E-SDK proofs consistent
with the generic starter kit conventions.

* fix: Simplify / update build instructions. (#713)

Co-authored-by: June Blender <juneb@users.noreply.github.com>
Co-authored-by: Alex Chew <alex-chew@users.noreply.github.com>

* fix(proof_timeout): mark high-memory proofs expensive (#710)

* Removed OOM test, as OOM is no longer possible from aws allocators (#728)

* chore: pin newer aws-sdk-cpp in macOS CI builds (#729)

* chore: update version number and changelog for v1.9.1

* chore: update CBMC CI submodules

Co-authored-by: Kareem Khazem <karkhaz@amazon.com>
Co-authored-by: Robin Salkeld <salkeldr@amazon.com>
Co-authored-by: Ben Farley <47006790+farleyb-amazon@users.noreply.github.com>
Co-authored-by: lizroth <30636882+lizroth@users.noreply.github.com>
Co-authored-by: June Blender <juneb@users.noreply.github.com>
Co-authored-by: Justin Boswell <boswej@amazon.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants