From mboxrd@z Thu Jan 1 00:00:00 1970 From: Marius Bakke Subject: Re: [PATCH 4/6] gnu: Add rocksdb. Date: Wed, 18 Jan 2017 01:10:58 +0100 Message-ID: <87a8ap9qi5.fsf@kirby.i-did-not-set--mail-host-address--so-tickle-me> References: <20170115203338.19769-1-mbakke@fastmail.com> <20170115203338.19769-5-mbakke@fastmail.com> <87fukhb95t.fsf@gnu.org> Mime-Version: 1.0 Content-Type: multipart/signed; boundary="=-=-="; micalg=pgp-sha512; protocol="application/pgp-signature" Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:57828) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1cTdqC-000601-4a for guix-devel@gnu.org; Tue, 17 Jan 2017 19:11:05 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1cTdq8-0006kZ-TR for guix-devel@gnu.org; Tue, 17 Jan 2017 19:11:04 -0500 In-Reply-To: <87fukhb95t.fsf@gnu.org> List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: "Guix-devel" To: Ludovic =?utf-8?Q?Court=C3=A8s?= Cc: guix-devel@gnu.org --=-=-= Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Ludovic Court=C3=A8s writes: > Marius Bakke skribis: > >> * gnu/packages/databases.scm (rocksdb): New variable. > > [...] > >> + (lambda* (#:key (make-flags '()) #:allow-other-keys) >> + ;; Prevent the build from adding machine-specific optimiza= tions. >> + ;; 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)= )))) > > We could avoid building the static libs if nothing requires it; no > strong opinion though. I do tend to simply drop the static libs (see e.g. "dlib" or "capnproto"), but in this case Ceph requires the static library. I will make another attempt at making it use "-lrocksdb" instead of the ".a" before pushing this package however, now that I know the build better. In the crypto++ case, static is the default make target, so I suspect it's "normal" to use. But as I recently realized, grafting most likely won't work with static libraries, so I will remove it. Being a crypto library and all. We should discourage it indeed. >> + (home-page "http://rocksdb.org/") >> + (synopsis "Persistent key-value store for fast storage") >> + (description >> + "RocksDB is an embeddable, persistent key-value storage library th= at is >> +designed for flash and RAM storage.") > > Could you expound a little bit? How about: (synopsis "Persistent key-value store for flash and RAM storage") (description "RocksDB is a library that forms the core building block for a fast key-value server, especially suited for storing data on flash drives. It has a Log-Structured-Merge-Database (LSM) design with flexible tradeoffs between Write-Amplification-Factor (WAF), Read-Amplification-Factor (RAF) and Space-Amplification-Factor (SAF). It has multi-threaded compactions, making it specially suitable for storing multiple terabytes of data in a single database. It is based on @code{LevelDB}.") (taken from the README) Thanks a lot for the reviews! --=-=-= Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQEzBAEBCgAdFiEEu7At3yzq9qgNHeZDoqBt8qM6VPoFAlh+spIACgkQoqBt8qM6 VPrv4wgAyAEI6U3fqpNSCF7iOami8X1zCSz4t6LjVI4bBfFacOdqPODpLEwKtfBq jZLpix+VknMn4IKyOptV6tI06BuzNjt+ldzOr0PolhyScgM5ZfQ6biLe9aF8VUUx V1YuxwyINk22qnQF9ie+l4mYcSid+G3JplkWz9Cf0Nk0Esf7ZqiZC8jhwzb2RqR8 ic+o++3vcrgTfQYb3VZcDXAsCMO3aVtiBR/6Co2RMympULoxXcBy9TixYgQzEr2s wyPzWETq23/tWhSk8EE3DULOr4D/jpSupjGRtPeDwr0va2KRCh6KqJHZTpDQGNY2 LZbAazXJCFmKxZI+HUgxcjen7fsF4Q== =yN5w -----END PGP SIGNATURE----- --=-=-=--