aboutsummaryrefslogtreecommitdiff
path: root/gnu
diff options
context:
space:
mode:
authorMarius Bakke <mbakke@fastmail.com>2017-04-14 21:03:31 +0200
committerMarius Bakke <mbakke@fastmail.com>2017-04-15 18:51:00 +0200
commitf91c677c03479c26a9c9ee5f2f44d8dc77bec262 (patch)
tree19b1596c0cc0d81c089a8155775aedfe88a0ca6a /gnu
parentbf144793aeb744fdc5bdfa98db776038ba0ea6c7 (diff)
downloadguix-f91c677c03479c26a9c9ee5f2f44d8dc77bec262.tar.gz
guix-f91c677c03479c26a9c9ee5f2f44d8dc77bec262.zip
gnu: rocksdb: Don't build static library.
* gnu/packages/databases.scm (rocksdb)[arguments]<#:phases>: Add new Makefile substitution. Remove 'delete-static-library' phase. Adjust 'build-release-libraries' phase to match. <#:make-flags>: Remove redundant flag.
Diffstat (limited to 'gnu')
-rw-r--r--gnu/packages/databases.scm35
1 files changed, 12 insertions, 23 deletions
diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm
index 4dad473de3..cc2f8a2f92 100644
--- a/gnu/packages/databases.scm
+++ b/gnu/packages/databases.scm
@@ -576,9 +576,6 @@ types are supported, as is encryption.")
(build-system gnu-build-system)
(arguments
'(#:make-flags (list "CC=gcc"
- ;; Make the resulting library position-independent so the
- ;; static version can be included in shared objects.
- "EXTRA_CXXFLAGS=-fPIC"
(string-append "INSTALL_PATH="
(assoc-ref %outputs "out")))
#:phases
@@ -587,6 +584,9 @@ types are supported, as is encryption.")
(lambda _
(substitute* "Makefile"
(("build_tools/gnu_parallel") "parallel")
+ ;; Don't depend on the static library when installing.
+ (("install: install-static")
+ "install: install-shared")
(("#!/bin/sh") (string-append "#!" (which "sh"))))
#t))
(delete 'configure)
@@ -600,26 +600,15 @@ types are supported, as is encryption.")
(("^[[:blank:]]+env_test[[:blank:]]+\\\\") "\\")
(("^[[:blank:]]+persistent_cache_test[[:blank:]]+\\\\") "\\"))
#t))
- (add-after
- 'check 'build-release-libraries
- ;; The 'check' target depends on the default target which is compiled
- ;; with debug symbols. The 'install' target depends on shared and
- ;; static release targets so we build them here for clarity.
- ;; TODO: Add debug output.
- (lambda* (#:key (make-flags '()) #:allow-other-keys)
- ;; Prevent the build from adding machine-specific optimizations.
- ;; This does not work if passed as a make flag...
- (setenv "PORTABLE" "1")
- (and (zero? (apply system* "make" "static_lib" make-flags))
- (zero? (apply system* "make" "shared_lib" make-flags)))))
- (add-after 'install 'delete-static-library
- (lambda* (#:key outputs #:allow-other-keys)
- (let* ((out (assoc-ref outputs "out"))
- (lib (string-append out "/lib")))
- (for-each (lambda (file)
- (delete-file file))
- (find-files lib "\\.l?a$"))
- #t))))))
+ (add-after 'check 'build-release-libraries
+ ;; The default build target is a debug build for tests. The
+ ;; install target depends on "shared_lib" and "static_lib"
+ ;; targets for release builds so we build them here for clarity.
+ ;; TODO: Add debug output.
+ (lambda* (#:key (make-flags '()) #:allow-other-keys)
+ ;; Prevent the build from adding machine-specific optimizations.
+ (setenv "PORTABLE" "1")
+ (zero? (apply system* "make" "shared_lib" make-flags)))))))
(native-inputs
`(("parallel" ,parallel)
("perl" ,perl)