nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{
2 lib,
3 stdenv,
4 fetchFromGitHub,
5 fetchpatch,
6 cmake,
7 gtest,
8 nix-update-script,
9}:
10
11stdenv.mkDerivation (finalAttrs: {
12 pname = "simpleini";
13 version = "4.22";
14
15 src = fetchFromGitHub {
16 name = "simpleini-sources-${finalAttrs.version}";
17 owner = "brofield";
18 repo = "simpleini";
19 tag = "v${finalAttrs.version}";
20 hash = "sha256-H4J4+v/3A8ZTOp4iMeiZ0OClu68oP4vUZ8YOFZbllcM=";
21 };
22
23 nativeBuildInputs = [
24 cmake
25 ];
26
27 buildInputs = [
28 gtest
29 ];
30
31 strictDeps = true;
32
33 cmakeFlags = [ (lib.cmakeBool "SIMPLEINI_USE_SYSTEM_GTEST" true) ];
34
35 patches = [
36 # Fixes for cmake export from master, can be removed after the next release
37 (fetchpatch {
38 url = "https://github.com/brofield/simpleini/commit/aeacf861a8ad8add5f4974792a88ffea393e41db.patch";
39 hash = "sha256-lpoQHff8JwfljMUxL6Y2MqsGDZtDPjnOIKSIJ1rqrAI=";
40 })
41 ];
42
43 passthru.updateScript = nix-update-script { };
44
45 meta = {
46 description = "Cross-platform C++ library providing a simple API to read and write INI-style configuration files";
47 longDescription = ''
48 A cross-platform library that provides a simple API to read and write
49 INI-style configuration files. It supports data files in ASCII, MBCS and
50 Unicode. It is designed explicitly to be portable to any platform and has
51 been tested on Windows, WinCE and Linux. Released as open-source and free
52 using the MIT licence.
53 '';
54 homepage = "https://github.com/brofield/simpleini";
55 license = lib.licenses.mit;
56 maintainers = with lib.maintainers; [
57 HeitorAugustoLN
58 ];
59 platforms = lib.platforms.all;
60 };
61})