summary refs log tree commit diff
path: root/pkgs
diff options
context:
space:
mode:
authorjanus <janus@xn--kn-1ia.guru>2015-11-24 10:59:39 +0000
committerjanus <janus@xn--kn-1ia.guru>2016-01-01 16:59:48 +0000
commita1ade02cdc75a11013c49ad12c7bb4feeec0d080 (patch)
treef7969d9daf6d3e1aebabdf0c085d52a0a0996ca9 /pkgs
parent35cf6c428f05c522a4987d144c8bd5abe6b2f468 (diff)
downloadnixpkgs-a1ade02cdc75a11013c49ad12c7bb4feeec0d080.tar
nixpkgs-a1ade02cdc75a11013c49ad12c7bb4feeec0d080.tar.gz
nixpkgs-a1ade02cdc75a11013c49ad12c7bb4feeec0d080.tar.bz2
nixpkgs-a1ade02cdc75a11013c49ad12c7bb4feeec0d080.tar.lz
nixpkgs-a1ade02cdc75a11013c49ad12c7bb4feeec0d080.tar.xz
nixpkgs-a1ade02cdc75a11013c49ad12c7bb4feeec0d080.tar.zst
nixpkgs-a1ade02cdc75a11013c49ad12c7bb4feeec0d080.zip
FreeBSD support
Diffstat (limited to 'pkgs')
-rw-r--r--pkgs/applications/altcoins/bitcoin.nix5
-rw-r--r--pkgs/development/compilers/sbcl/bootstrap.nix6
-rw-r--r--pkgs/development/libraries/db/clang-4.8.patch22
-rw-r--r--pkgs/development/libraries/db/clang-5.3.patch (renamed from pkgs/development/libraries/db/osx.patch)0
-rw-r--r--pkgs/development/libraries/db/db-4.8.nix1
-rw-r--r--pkgs/development/libraries/db/db-5.3.nix2
-rw-r--r--pkgs/development/libraries/glib/default.nix2
-rw-r--r--pkgs/development/libraries/libiconv/default.nix3
-rw-r--r--pkgs/tools/compression/bzip2/default.nix5
-rw-r--r--pkgs/tools/networking/miniupnpc/default.nix2
10 files changed, 39 insertions, 9 deletions
diff --git a/pkgs/applications/altcoins/bitcoin.nix b/pkgs/applications/altcoins/bitcoin.nix
index bdd0335fe3b..fb2827c4bd3 100644
--- a/pkgs/applications/altcoins/bitcoin.nix
+++ b/pkgs/applications/altcoins/bitcoin.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl, pkgconfig, autoreconfHook, openssl, db48, boost
-, zlib, miniupnpc, qt4, utillinux, protobuf, qrencode
+, zlib, miniupnpc, qt4, protobuf, qrencode
 , withGui }:
 
 with stdenv.lib;
@@ -17,7 +17,8 @@ stdenv.mkDerivation rec{
   };
 
   buildInputs = [ pkgconfig autoreconfHook openssl db48 boost zlib
-                  miniupnpc utillinux protobuf ]
+                  miniupnpc protobuf ]
+                  ++ optionals stdenv.isLinux [ utillinux ]
                   ++ optionals withGui [ qt4 qrencode ];
 
   configureFlags = [ "--with-boost-libdir=${boost.lib}/lib" ]
diff --git a/pkgs/development/compilers/sbcl/bootstrap.nix b/pkgs/development/compilers/sbcl/bootstrap.nix
index 0114f014a51..4152bb8b2a3 100644
--- a/pkgs/development/compilers/sbcl/bootstrap.nix
+++ b/pkgs/development/compilers/sbcl/bootstrap.nix
@@ -23,7 +23,11 @@ let
       sha256 = "0sp5445rbvms6qvzhld0kwwvydw51vq5iaf4kdqsf2d9jvaz3yx5";
     };
     armv6l-linux = armv7l-linux;
-    x86_64-solaris = x86_64-linux;
+    x86_64-freebsd = rec {
+      version = "1.2.7";
+      system = "x86-64-freebsd";
+      sha256 = "14k42xiqd2rrim4pd5k5pjcrpkac09qnpynha8j1v4jngrvmw7y6";
+    };
   };
   cfg = options.${stdenv.system};
 in
diff --git a/pkgs/development/libraries/db/clang-4.8.patch b/pkgs/development/libraries/db/clang-4.8.patch
new file mode 100644
index 00000000000..c53160a8297
--- /dev/null
+++ b/pkgs/development/libraries/db/clang-4.8.patch
@@ -0,0 +1,22 @@
+diff --git a/dbinc/atomic.h b/dbinc/atomic.h
+index 0034dcc..fa7ba93 100644
+--- a/dbinc/atomic.h
++++ b/dbinc/atomic.h
+@@ -144,7 +144,7 @@ typedef LONG volatile *interlocked_val;
+ #define	atomic_inc(env, p)	__atomic_inc(p)
+ #define	atomic_dec(env, p)	__atomic_dec(p)
+ #define	atomic_compare_exchange(env, p, o, n)	\
+-	__atomic_compare_exchange((p), (o), (n))
++	__db_atomic_compare_exchange((p), (o), (n))
+ static inline int __atomic_inc(db_atomic_t *p)
+ {
+ 	int	temp;
+@@ -176,7 +176,7 @@ static inline int __atomic_dec(db_atomic_t *p)
+  * http://gcc.gnu.org/onlinedocs/gcc-4.1.0/gcc/Atomic-Builtins.html
+  * which configure could be changed to use.
+  */
+-static inline int __atomic_compare_exchange(
++static inline int __db_atomic_compare_exchange(
+ 	db_atomic_t *p, atomic_value_t oldval, atomic_value_t newval)
+ {
+ 	atomic_value_t was;
diff --git a/pkgs/development/libraries/db/osx.patch b/pkgs/development/libraries/db/clang-5.3.patch
index 438fa7eedd7..438fa7eedd7 100644
--- a/pkgs/development/libraries/db/osx.patch
+++ b/pkgs/development/libraries/db/clang-5.3.patch
diff --git a/pkgs/development/libraries/db/db-4.8.nix b/pkgs/development/libraries/db/db-4.8.nix
index 9b5e8cb39bd..6a161b0b72d 100644
--- a/pkgs/development/libraries/db/db-4.8.nix
+++ b/pkgs/development/libraries/db/db-4.8.nix
@@ -2,6 +2,7 @@
 
 import ./generic.nix (args // rec {
   version = "4.8.30";
+  extraPatches = [ ./clang-4.8.patch ];
   sha256 = "0ampbl2f0hb1nix195kz1syrqqxpmvnvnfvphambj7xjrl3iljg0";
   branch = "4.8";
 })
diff --git a/pkgs/development/libraries/db/db-5.3.nix b/pkgs/development/libraries/db/db-5.3.nix
index b5e62ee686f..98002c24461 100644
--- a/pkgs/development/libraries/db/db-5.3.nix
+++ b/pkgs/development/libraries/db/db-5.3.nix
@@ -3,6 +3,6 @@
 import ./generic.nix (args // rec {
   version = "5.3.28";
   sha256 = "0a1n5hbl7027fbz5lm0vp0zzfp1hmxnz14wx3zl9563h83br5ag0";
-  extraPatches = [ ./osx.patch ];
+  extraPatches = [ ./clang-5.3.patch ];
   branch = "5.3";
 })
diff --git a/pkgs/development/libraries/glib/default.nix b/pkgs/development/libraries/glib/default.nix
index e53775464e0..07e1f1243ec 100644
--- a/pkgs/development/libraries/glib/default.nix
+++ b/pkgs/development/libraries/glib/default.nix
@@ -7,7 +7,7 @@
 
 with stdenv.lib;
 
-assert !stdenv.isDarwin -> stdenv.cc.isGNU;
+assert stdenv.isFreeBSD || stdenv.isDarwin || stdenv.cc.isGNU;
 
 # TODO:
 # * Add gio-module-fam
diff --git a/pkgs/development/libraries/libiconv/default.nix b/pkgs/development/libraries/libiconv/default.nix
index 70b0574a7b4..24a0376f0f9 100644
--- a/pkgs/development/libraries/libiconv/default.nix
+++ b/pkgs/development/libraries/libiconv/default.nix
@@ -19,7 +19,8 @@ stdenv.mkDerivation rec {
   # (Windows' linker would need to be used somehow to produce an actual
   # DLL.)  Thus, build the static library too, and this is what Gettext
   # will actually use.
-  configureFlags = if stdenv.isCygwin then [ "--enable-static" ] else null;
+  configureFlags = if stdenv.isCygwin then [ "--enable-static" ] else
+                   if stdenv.isFreeBSD then [ "--with-pic" ] else null;
 
   crossAttrs = {
     # Disable stripping to avoid "libiconv.a: Archive has no index" (MinGW).
diff --git a/pkgs/tools/compression/bzip2/default.nix b/pkgs/tools/compression/bzip2/default.nix
index 3e835c30e3d..bb04049d8a6 100644
--- a/pkgs/tools/compression/bzip2/default.nix
+++ b/pkgs/tools/compression/bzip2/default.nix
@@ -58,8 +58,9 @@ in stdenv.mkDerivation {
     ln -s bzip2 $out/bin/bzcat
   '';
 
-  patchPhase = stdenv.lib.optionalString stdenv.isDarwin ''
-    substituteInPlace Makefile --replace 'CC=gcc' 'CC=clang'
+  patchPhase = ''
+    substituteInPlace Makefile --replace CC=gcc CC=cc
+    substituteInPlace Makefile-libbz2_so --replace CC=gcc CC=cc
   '';
 
   preConfigure = ''
diff --git a/pkgs/tools/networking/miniupnpc/default.nix b/pkgs/tools/networking/miniupnpc/default.nix
index a0ae90da446..ba0f6c25521 100644
--- a/pkgs/tools/networking/miniupnpc/default.nix
+++ b/pkgs/tools/networking/miniupnpc/default.nix
@@ -18,6 +18,6 @@ stdenv.mkDerivation rec {
     inherit version;
     homepage = http://miniupnp.free.fr/;
     description = "A client that implements the UPnP Internet Gateway Device (IGD) specification";
-    platforms = stdenv.lib.platforms.linux;
+    platforms = stdenv.lib.platforms.linux ++ stdenv.lib.platforms.freebsd;
   };
 }