diff options
author | Pjotr Prins | 2018-07-14 13:10:41 +0200 |
---|---|---|
committer | Pjotr Prins | 2018-07-14 13:10:41 +0200 |
commit | d42329ed84e99f9ab351af291c42dbd06ca9cb59 (patch) | |
tree | b7b32a259c0808a2891932f8d0a653b59adbb90b | |
parent | 3f120a438bd9ce981a43058f47bb2bb05f86fc1e (diff) | |
download | pangemma-d42329ed84e99f9ab351af291c42dbd06ca9cb59.tar.gz |
Guix: add more build information to the final binary
-rw-r--r-- | INSTALL.md | 11 | ||||
-rw-r--r-- | Makefile | 3 | ||||
-rw-r--r-- | VERSION | 2 | ||||
-rwxr-xr-x | scripts/gen_version_info.sh | 4 | ||||
-rw-r--r-- | src/gemma.cpp | 1 | ||||
-rw-r--r-- | src/version.h | 7 |
6 files changed, 18 insertions, 10 deletions
@@ -65,10 +65,11 @@ Note that this is an advanced configuration option at this stage. GNU Guix will make it easier in the future to deal with shared graphs. Contact Pjotr Prins if you are really interested. -The following two links provide the reproducible build system that we for working on GEMMA: +The following two links capture and provide the reproducible build +system that we use for development of GEMMA: - https://gitlab.com/genenetwork/guix-bioinformatics/tree/f7a4bbf655bb255df46228f04cc191c1f08f198b - https://gitlab.com/genenetwork/guix/tree/686f5b9a8cdb66e81140b03a42644579e7eb1f9a +1. https://gitlab.com/genenetwork/guix-bioinformatics/tree/99718d253ec9ed8ed836f0a348381a7cd83d4b9f +2. https://gitlab.com/genenetwork/guix/tree/686f5b9a8cdb66e81140b03a42644579e7eb1f9a Check the tree out, build Guix from source and run something like @@ -88,12 +89,14 @@ and build by setting GUIX to profile make GUIX=~/opt/gemma-dev-env make GUIX=~/opt/gemma-dev-env check -The following generates the graph for the full *build* system of GEMMA +The following generates the graph for the full current *build* system of GEMMA env GUIX_PACKAGE_PATH=../guix-bioinformatics/ ./pre-inst-env guix graph gemma-dev-env |dot -Gsize="10,10" -Gratio=0.7 -Tsvg -Nfontsize=48 > dag.svg ![Current Guix dependency graph](.guix.dag.svg) +To zoom in download the SVG file and display it in your browser. + Another way to view the runtime graph is to use ldd gemma @@ -84,6 +84,7 @@ else OPENBLAS_INCLUDE_PATH = . EIGEN_INCLUDE_PATH = $(GUIX)/include/eigen3 RPATH = -Xlinker --rpath=$(GUIX)/lib + PROFILE =$(realpath $(GUIX)) endif endif @@ -184,7 +185,7 @@ OBJS = $(SOURCES:.cpp=.o) all: $(OUTPUT) ./src/version.h: ./VERSION - $(VGEN) > src/version.h + $(VGEN) $(PROFILE) > src/version.h $(OUTPUT): $(OBJS) $(CPP) $(CPPFLAGS) $(OBJS) $(LIBS) -o $(OUTPUT) @@ -1 +1 @@ -0.98-pre1 +0.98-pre2 diff --git a/scripts/gen_version_info.sh b/scripts/gen_version_info.sh index 8a9e38d..9be81c6 100755 --- a/scripts/gen_version_info.sh +++ b/scripts/gen_version_info.sh @@ -3,10 +3,12 @@ # Script to generate the version info of GEMMA and its environment # in ./src/version.h -DATE=$(date "+%Y/%m/%d") +DATE=$(date "+%Y-%m-%d") YEAR=$(date "+%Y") +PROFILE=$1 echo // version.h generated by GEMMA $0 echo \#define GEMMA_VERSION \"$(cat ./VERSION)\" echo \#define GEMMA_DATE \"$DATE\" echo \#define GEMMA_YEAR \"$YEAR\" +echo \#define GEMMA_PROFILE \"$PROFILE\" diff --git a/src/gemma.cpp b/src/gemma.cpp index 758aa24..4c7799a 100644 --- a/src/gemma.cpp +++ b/src/gemma.cpp @@ -3106,6 +3106,7 @@ void GEMMA::WriteLog(int argc, char **argv, PARAM &cPar) { outfile << "##" << endl; outfile << "## GEMMA Version = " << version << " (" << date << ")" << endl; + outfile << "## Build profile = " << GEMMA_PROFILE << endl ; outfile << "## GSL Version = " << GSL_VERSION << endl; outfile << "## Eigen Version = " << EIGEN_WORLD_VERSION << "." << EIGEN_MAJOR_VERSION << "." << EIGEN_MINOR_VERSION << endl; #ifdef OPENBLAS diff --git a/src/version.h b/src/version.h index 3f6f38f..518a9f3 100644 --- a/src/version.h +++ b/src/version.h @@ -1,4 +1,5 @@ -// version.h generated by GEMMA ./scripts/gen_version_info.sh -#define GEMMA_VERSION "0.98-pre1" -#define GEMMA_DATE "2018/02/10" +// version.h generated by GEMMA scripts/gen_version_info.sh +#define GEMMA_VERSION "0.98-pre2" +#define GEMMA_DATE "2018-07-14" #define GEMMA_YEAR "2018" +#define GEMMA_PROFILE "/gnu/store/9ahrb1swr06kjm2gr2zg0fsyvps3xqgz-profile" |