1{ lib, stdenv
2, build2
3, fetchurl
4, libodb
5, sqlite
6, enableShared ? !stdenv.hostPlatform.isStatic
7, enableStatic ? !enableShared
8}:
9stdenv.mkDerivation rec {
10 pname = "libodb-sqlite";
11 version = "2.5.0-b.23";
12
13 outputs = [ "out" "dev" "doc" ];
14
15 src = fetchurl {
16 url = "https://pkg.cppget.org/1/beta/odb/libodb-sqlite-${version}.tar.gz";
17 sha256 = "sha256-HjEFfNDXduHOexNm82S+vqKRQM3SwgEYiDBZcPXsr/w=";
18 };
19
20 nativeBuildInputs = [
21 build2
22 ];
23 buildInputs = [
24 libodb
25 ];
26 propagatedBuildInputs = [
27 sqlite
28 ];
29
30 build2ConfigureFlags = [
31 "config.bin.lib=${build2.configSharedStatic enableShared enableStatic}"
32 ];
33
34 doCheck = true;
35
36 meta = with lib; {
37 description = "SQLite ODB runtime library";
38 longDescription = ''
39 ODB is an object-relational mapping (ORM) system for C++. It provides
40 tools, APIs, and library support that allow you to persist C++ objects
41 to a relational database (RDBMS) without having to deal with tables,
42 columns, or SQL and without manually writing any of the mapping code.
43 For more information see:
44
45 http://www.codesynthesis.com/products/odb/
46
47 This package contains the SQLite ODB runtime library. Every application
48 that includes code generated for the SQLite database will need to link
49 to this library.
50 '';
51 homepage = "https://www.codesynthesis.com/products/odb/";
52 changelog = "https://git.codesynthesis.com/cgit/odb/libodb-sqlite/tree/NEWS";
53 license = licenses.gpl2Only;
54 maintainers = with maintainers; [ r-burns ];
55 platforms = platforms.all;
56 };
57}