aboutsummaryrefslogtreecommitdiff
path: root/Makefile
AgeCommit message (Collapse)Author
2025-11-04v0.3.6v0.3.6Eric Biggers
2024-03-19v0.3.5v0.3.5Eric Biggers
2023-09-09Fixup for previous commitEric Biggers
2023-09-09Stop using golang.org/x/lintEric Biggers
golint is not supported anymore. See https://github.com/golang/go/issues/38968. We already use both 'go vet' and 'staticcheck' which are maintained.
2023-01-30v0.3.4v0.3.4Eric Biggers
2023-01-30Add a NEWS fileEric Biggers
Copy the GitHub release notes into a NEWS.md file so that the release notes are included in the actual git repo. This way, they aren't hidden away in GitHub, where they require an internet connection to access and will be lost if GitHub ever goes away. This also makes the release notes be properly versioned; GitHub allows past release notes to be edited, and there doesn't seem to be any record of what changed. Finally, this allows packages to install the release notes into /usr/share/doc/$pkgname/, as is the usual convention.
2022-04-08Switch to google.golang.org/protobuf/protoEric Biggers
github.com/golang/protobuf/proto has been deprecated in favor of google.golang.org/protobuf/proto, so migrate to the non-deprecated one.
2022-04-08Bump up required Go version to 1.16Eric Biggers
Bump up the required Go version to 1.16 so that we can assume that Go modules are enabled by default. Go 1.16 is the latest end-of-life release, so this makes it so that we support the latest end-of-life release (1.16), the current maintainance release (1.17), the current release (1.18), and future releases. This the same approach we took when we last bumped up the required Go version. Also update the ci.yml file to test with these versions.
2022-02-23v0.3.3v0.3.3Eric Biggers
2022-02-06v0.3.2v0.3.2Eric Biggers
2021-10-18Release version v0.3.1v0.3.1Eric Biggers
2021-05-05Specify -buildmode=c-shared after GO_FLAGS rather than beforeEric Biggers
When building pam_fscrypt.so, specify -buildmode=c-shared after $(GO_FLAGS) so that it overrides any user-specified buildmode. This is needed to allow -buildmode=pie to be specified in GO_FLAGS if the packager wants to build fscrypt as a position-independent executable (e.g. following https://wiki.archlinux.org/title/Go_package_guidelines). Previously, trying to do this caused pam_fscrypt.so to be incorrectly built as an executable rather than as a shared library.
2021-04-22Makefile: Optionally avoid installation of Ubuntu-specific PAM configFlorian Schmaus
This allows non Ubuntu distributions to opt out from the installation of Ubuntu-specific PAM files.
2021-03-31Release version v0.3.0 (#282)v0.3.0Eric Biggers
2020-11-30bash-completion: add completion scriptHenry-Joseph Audéoud
2020-06-13Release version v0.2.9 (#238)v0.2.9Eric Biggers
2020-05-20Release version v0.2.8 (#230)v0.2.8Eric Biggers
2020-05-09Wire up shellcheck of cli-tests/*.sh to 'make lint'Eric Biggers
Enforce that all the cli-test scripts pass 'shellcheck'.
2020-05-09Add cli-tests frameworkEric Biggers
Add a framework for writing automated tests of the fscrypt command-line tool. See cli-tests/README.md for details.
2020-03-24Release version v0.2.7v0.2.7Joe Richey
Signed-off-by: Joe Richey <joerichey@google.com>
2020-03-24Makefile: Use trimpath if available (#208)Joseph Richey
Passing -trimpath makes the build entirely reproducible. Signed-off-by: Joe Richey <joerichey@google.com>
2020-03-23cmd: Simplify "fscrypt --version" output (#207)Joseph Richey
There's no need to include the build time, author, and copyright info in the output of "fscrypt --version". This information is: - Overly complex (the current string is hard to parse) - Inaccurate (there are other authors than just me) - Unnecessary (the Apache 2 license is for Source Code) - Makes reproducible builds impossible The default version string is just fine. Signed-off-by: Joe Richey <joerichey@google.com>
2020-02-22Makefile: clean up installation commands (#201)Eric Biggers
Improve the documentation for the installation-related Makefile variables, and update the commands to remove the forward slash after $(DESTDIR) in order to remove a duplicate forward slash and match the recommended usage.
2020-02-18Use DESTDIR for install prefix (#200)Anatol Pomozov
DESTDIR has a well established purpose https://www.gnu.org/prep/standards/html_node/DESTDIR.html It is a suffix for all the files to be installed. And it is used by package managers who installs the files into some $tmpdir before creating a package. Change the build commands to follow this convention. Add BINDIR that does the same what previous did $DESTDIR.
2020-02-10Release version v0.2.6 (#198)v0.2.6Joseph Richey
* Release version v0.2.6 Fixes #195 Also, update the encrypted API key. My person access token had expired, this one should work now. Signed-off-by: Joe Richey <joerichey@google.com>
2019-10-25Manage tool versioning with Go modules (#161)Joseph Richey
See: https://github.com/golang/go/wiki/Modules#how-can-i-track-tool-dependencies-for-a-module The tool code is never actually built, but the versions are still lock in `go.mod` and `go.sum`. We can also simplify the Makefile.
2019-10-25Delete vendored code and update CI to Go 1.13 (#158)Joseph Richey
As the Go community transitions to using the modules ecosystem, we want to only support one way of managing dependencies. So this change moves to only using Go modules for dependency management. This means that our effective minimum Go version increases to Go 1.11. To account for this, we also update: - the documentation - Makefile - CI scripts
2019-09-11Prepare v0.2.5 (#147)v0.2.5Joseph Richey
Also add go version attrubute to go.mod
2019-08-28Makefile: exclude generated files from 'make format'Eric Biggers
Due to a goimports update, 'make format' is now changing metadata.pb.go. But this fix can't be committed because this file is generated by 'make gen'. Fix this by not formatting generated files.
2019-07-26Update Travis to use Ubuntu 18.04 and Go 1.12 (#135)Joseph Richey
Fixes CI issues
2019-01-19Install pam modules/configs to the right locationJoe Richey
Per the FHS, manually installed programs should go under /usr/local. This change also makes it easier to change the global installation prefix. For example, package managers should set PREFIX=/usr
2019-01-17Makefile: migrate from megacheck to staticcheckJoe Richey joerichey@google.com
This fixes travis issues as well as moving us off of deprecated tooling
2018-12-04Makefile: use a specific protoc-gen-go versionEric Biggers
'make gen' no longer works because it uses the git version of protoc-gen-go, which is no longer compatible with the latest released version of github.com/golang/protobuf/proto, which we're using. Freeze the protoc-gen-go version so that it keeps working.
2018-09-02feat(spell-check): add make command for spell check.Deepesh Pathak
* Remove spelling mistakes in the repository * Add travis script to check for typos. * Add command to Makefile to check for typos. * Fixes #71
2018-08-30Fix golint to not need a special forkJoe Richey joerichey@google.com
2018-08-30Update Protoc Compiler to 3.6.1Joe Richey joerichey@google.com
2018-08-30Don't vendor helper toolingJoe Richey joerichey@google.com
2018-08-23Release: v0.2.4Joe Richey joerichey@google.com
2018-02-14Makefile: arch command is not portableJoseph Richey
According to: https://www.gnu.org/software/coreutils/manual/html_node/arch-invocation.html the arch command isn't portable, so we switch to uname.
2018-02-13Makefile: Go/Protoc don't support arm64 big endianJoseph Richey
Protoc: https://github.com/google/protobuf/blob/a711e3d5b4ee1dd7f9d21197dca8432a5819a64e/protoc-artifacts/build-protoc.sh#L82-L83 Go: https://github.com/golang/sys/blob/37707fdb30a5b38865cfb95e5aab41707daec7fd/unix/linux/mkall.go#L43-L79
2018-02-13Makefile: Fix archetecture detectionJoseph Richey
Using "arch" instead of "go env GOARCH" is more standard and doesn't generate a warning on "sudo make install".
2018-02-12Release: v0.2.3Joseph Richey
2018-02-12Makefile: bump protoc to most recent versionJoseph Richey
2018-02-11Makefile: completly rewriteJoseph Richey
This change is a complete rewrite of fscrypt's Makefile. The new build rules can be roughly divided into secions: Build - bin/fscrypt and bin/pam_fscrypt Linting - gen (for .proto files), format, lint Test - test, test-{setup|teardown}, coverage.out Install - install, uninstall, install-{bin|pam} Tools - tools and other bin/* needed for the other rules As before, "make" builds the binary and pam_module, while "make all" builds and tests everything (except for integration tests), and "make clean" removes any generated files. Also note that this new build system: - Doesn't require input_fail.py - Properly falis on linter errors - Builds everything into the bin/ directory (customizable) - Builds all the vendored tools
2018-02-09dep: Run dep ensureJoseph Richey
2018-02-08dep: Update Travis to use depJoseph Richey
Add dep instalation, remove govendor from go tools, and add a check for dependancies.
2018-02-08Change Golang formatterJoseph Richey
Moves from goimports to [goreturns](https://github.com/sqs/goreturns). This should not effect any code that already compiles as goreturns only adds zero return values, then runs goimports. This is mainly to help improve ergonomics when dealing with multiple return types.
2017-10-03Makefile: Updated scripts to run tests in travisJoseph Richey
2017-09-29Makefile: Don't update dependancies w/ "make all"Joseph Richey
2017-08-31Merge pull request #52 from google/keyringsJoseph Richey
Changes to the keyrings interface, corresponding UI changes, and misc changes