diff --git a/pkgs/applications/altcoins/bitcoin.nix b/pkgs/applications/altcoins/bitcoin.nix index bdd0335fe3b5..fb2827c4bd3e 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 0114f014a51e..4152bb8b2a3f 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 000000000000..c53160a82970 --- /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 similarity index 100% rename from pkgs/development/libraries/db/osx.patch rename to 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 9b5e8cb39bda..6a161b0b72d8 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 b5e62ee686f0..98002c244612 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 e53775464e03..07e1f1243ece 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 70b0574a7b46..24a0376f0f9f 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 3e835c30e3d7..bb04049d8a66 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 a0ae90da4463..ba0f6c255212 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; }; }