summary refs log blame commit diff
path: root/pkgs/development/libraries/libmodbus/default.nix
blob: e18de4127a4a82279a0bab402d7ddd2a4cf0ab8e (plain) (tree)
1
2
3
4
5
6
7
8
9
10


                         
                           


                                                         
                                                                    

    









                                                                                                 

                                                                                  
                                      




                                           
{ stdenv, fetchurl }:

stdenv.mkDerivation rec {
  name = "libmodbus-3.1.6";

  src = fetchurl {
    url = "http://libmodbus.org/releases/${name}.tar.gz";
    sha256 = "05kwz0n5gn9m33cflzv87lz3zp502yp8fpfzbx70knvfl6agmnfp";
  };

  configureFlags = [
    # when cross-compiling we assume that the host system will return a valid
    # pointer for calls to malloc(0) or realloc(0)
    # https://www.uclibc.org/FAQ.html#gnu_malloc
    # https://www.gnu.org/software/autoconf/manual/autoconf.html#index-AC_005fFUNC_005fMALLOC-454
    # the upstream source should be patched to avoid needing this
    "ac_cv_func_malloc_0_nonnull=yes"
    "ac_cv_func_realloc_0_nonnull=yes"
  ];

  meta = with stdenv.lib; {
    description = "Library to send/receive data according to the Modbus protocol";
    homepage = https://libmodbus.org/;
    license = licenses.lgpl21Plus;
    platforms = platforms.linux;
    maintainers = [ maintainers.bjornfor ];
  };
}