diff --git a/pkgs/development/libraries/xbase/default.nix b/pkgs/development/libraries/xbase/default.nix new file mode 100644 index 000000000000..847ca6510e5a --- /dev/null +++ b/pkgs/development/libraries/xbase/default.nix @@ -0,0 +1,20 @@ +{ stdenv, fetchurl }: + +stdenv.mkDerivation { + name = "xbase-3.1.2"; + + src = fetchurl { + url = mirror://sourceforge/xdb/xbase64-3.1.2.tar.gz; + sha256 = "17287kz1nmmm64y7zp9nhhl7slzlba09h6cc83w4mvsqwd9w882r"; + }; + + prePatch = "find . -type f -not -name configure -print0 | xargs -0 chmod -x"; + patches = [ ./xbase-fixes.patch ]; + + meta = { + homepage = http://linux.techass.com/projects/xdb/; + description = "XBase compatible C++ class library formerly known as XDB"; + platforms = stdenv.lib.platforms.all; + maintainers = [ stdenv.lib.maintainers.urkud ]; + }; +} diff --git a/pkgs/development/libraries/xbase/xbase-fixes.patch b/pkgs/development/libraries/xbase/xbase-fixes.patch new file mode 100644 index 000000000000..a23658049b98 --- /dev/null +++ b/pkgs/development/libraries/xbase/xbase-fixes.patch @@ -0,0 +1,34 @@ +diff --git a/xbase64/xbase64.cpp b/xbase64/xbase64.cpp +index fc5613d..2449535 100644 +--- a/xbase64/xbase64.cpp ++++ b/xbase64/xbase64.cpp +@@ -51,6 +51,7 @@ + #include + #include + #include ++#include + + //#include + +diff --git a/xbase64/xblock.cpp b/xbase64/xblock.cpp +index c44cbb9..3554fc1 100644 +--- a/xbase64/xblock.cpp ++++ b/xbase64/xblock.cpp +@@ -53,6 +53,7 @@ + #endif + + #include ++#include + + #ifdef HAVE_IO_H // windows locking + #include +diff --git a/xbase64/xbnode.cpp b/xbase64/xbnode.cpp +index 5e688c1..3c652b3 100644 +--- a/xbase64/xbnode.cpp ++++ b/xbase64/xbnode.cpp +@@ -1,4 +1,4 @@ +-#include "xbNode.h" ++#include "xbnode.h" + + void xbNodeLink::AddNode(xbNodeLink* node) + { diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 27e13cbd5631..ae61b6305a48 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -3862,6 +3862,8 @@ let flex = flex2533; }; + xbase = callPackage ../development/libraries/xbase { }; + xineLib = callPackage ../development/libraries/xine-lib { }; xautolock = callPackage ../misc/screensavers/xautolock { };