diff options
-rw-r--r-- | .guix-dev-static | 2 | ||||
-rw-r--r-- | INSTALL.md | 28 | ||||
-rw-r--r-- | Makefile | 8 | ||||
-rw-r--r-- | RELEASE-NOTES.md | 6 |
4 files changed, 44 insertions, 0 deletions
diff --git a/.guix-dev-static b/.guix-dev-static new file mode 100644 index 0000000..a5efa2f --- /dev/null +++ b/.guix-dev-static @@ -0,0 +1,2 @@ +# Typical Guix container invocation +~/opt/guix/bin/guix environment -C guix --ad-hoc gcc-toolchain:static gdb gsl openblas zlib:static bash ld-wrapper perl vim which gfortran-toolchain @@ -122,3 +122,31 @@ GEMMA includes the shunit2 test framework (version 2.0). or ./run_tests.sh + +## Releases + +### Docker release + +To distribute GEMMA I made static versions of the binary. A container +can be made instead with, for example + +```sh +env GUIX_PACKAGE_PATH=~/guix-bioinformatics ~/.config/guix/current/bin/guix \ + pack -f docker gemma-gn2 -S /bin=bin +``` + +which created a container in of size 51MB. Tiny! For more information +see +[GUIX-NOTES](http://git.genenetwork.org/guix-bioinformatics/guix-notes/CONTAINERS.org). + + +### Static release + +To create a static release, locate the gfortran lib and use + + source .guix-dev-static + make WITH_GFORTRAN=1 EXTRA_FLAGS=-L/gnu/store/741057r2x06zwg6zcmqmdyv51spm6n9i-gfortran-7.5.0-lib/lib static + +otherwise OpenBlas will complain with + + undefined reference to `_gfortran_concat_string' @@ -23,6 +23,10 @@ # # make static # +# Static build may require some extra flags +# +# make WITH_GFORTRAN=1 EXTRA_FLAGS=-L/gnu/store/741057r2x06zwg6zcmqmdyv51spm6n9i-gfortran-7.5.0-lib/lib static +# # Run tests with # # make check @@ -72,6 +76,7 @@ WITH_GFORTRAN = # Add -lgfortran (if OpenBlas does not OPENBLAS_LEGACY = # Using older OpenBlas FORCE_STATIC = # Static linking of libraries GCC_FLAGS = -DHAVE_INLINE -pthread -Wall -std=gnu++11 # extra flags -Wl,--allow-multiple-definition +EXTRA_FLAGS = GSL_INCLUDE_PATH = ifeq ($(SYS), WIN) @@ -172,6 +177,9 @@ endif ifdef WITH_GFORTRAN LIBS += -lgfortran -lquadmath endif +ifdef EXTRA_FLAGS + LIBS += $(EXTRA_FLAGS) +endif .PHONY: all test diff --git a/RELEASE-NOTES.md b/RELEASE-NOTES.md index 7fa72cf..1d59d23 100644 --- a/RELEASE-NOTES.md +++ b/RELEASE-NOTES.md @@ -4,6 +4,12 @@ see and [commits](https://github.com/genetics-statistics/GEMMA/commits/master). +## ChangeLog v0.99-pre1 (2020/??) + +* GEMMA builds on ARM +* Fixed static build - requires gfortran path for OpenBLAS +* Updated README's and Manual + ## ChangeLog v0.98.3 (2020/11/28) Maintenance release |