this repo has no description
1{
2 description = "GixSQL is an ESQL preprocessor and a series of runtime libraries to enable GnuCOBOL to access PostgreSQL, ODBC, MySQL, Oracle and SQLite databases.";
3
4 inputs = {
5 gixsql-src = {
6 url = "https://github.com/mridoni/gixsql/releases/download/v1.0.20b/gixsql-1.0.20b.tar.gz";
7 flake = false;
8 };
9 };
10
11 outputs =
12 { self
13 , nixpkgs
14 , gixsql-src
15 }:
16 let
17 supportedSystems = [ "x86_64-linux" ];
18 forAllSystems = nixpkgs.lib.genAttrs supportedSystems;
19 nixpkgsFor = forAllSystems (system: import nixpkgs {
20 inherit system;
21 overlays = [ self.overlays.default ];
22 });
23 in
24 {
25 overlays.default = final: prev: {
26 gixsql =
27 final.stdenv.mkDerivation {
28 pname = "gixsql";
29 version = "0.1.0";
30 src = gixsql-src;
31
32 buildInputs = [ ];
33
34 nativeBuildInputs = [
35 final.bison
36 final.flex
37 final.pkg-config
38 final.autoconf
39 final.automake
40 final.libtool
41 final.spdlog
42 final.binutils
43 final.gcc
44 ];
45
46 patches = [
47 ./remove-stdcxxfs.patch
48 ./add-cstdint.patch
49 ];
50
51 configurePhase = ''
52 autoreconf -fi
53 automake --add-missing
54 ./configure --prefix=$out --disable-mysql --disable-odbc --disable-oracle
55 '';
56
57 buildPhase = ''
58 make CXXFLAGS="-Wno-error -Wno-format-security"
59 '';
60
61 installPhase = ''
62 make install
63 '';
64 };
65 };
66
67 packages = forAllSystems (system: {
68 inherit (nixpkgsFor."${system}") gixsql;
69 });
70
71 defaultPackage = forAllSystems (system: self.packages."${system}".gixsql);
72 };
73}