libusb: build from source instead of release tarball
This commit is contained in:
parent
54bab3faaf
commit
aa63d51a34
@ -1,4 +1,4 @@
|
|||||||
{stdenv, fetchurl, pkgconfig, libusb1}:
|
{stdenv, fetchFromGitHub, autoreconfHook, pkgconfig, libusb1}:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "libusb-compat-${version}";
|
name = "libusb-compat-${version}";
|
||||||
@ -7,12 +7,14 @@ stdenv.mkDerivation rec {
|
|||||||
outputs = [ "out" "dev" ]; # get rid of propagating systemd closure
|
outputs = [ "out" "dev" ]; # get rid of propagating systemd closure
|
||||||
outputBin = "dev";
|
outputBin = "dev";
|
||||||
|
|
||||||
nativeBuildInputs = [ pkgconfig ];
|
nativeBuildInputs = [ pkgconfig autoreconfHook ];
|
||||||
propagatedBuildInputs = [ libusb1 ];
|
propagatedBuildInputs = [ libusb1 ];
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchFromGitHub {
|
||||||
url = "https://github.com/libusb/libusb-compat-0.1/releases/download/v${version}/${name}.tar.gz";
|
owner = "libusb";
|
||||||
sha256 = "1y2wjba4w9r53sfaacj6awyqhmi31n53j4wwx8g8qj82m8wcwy86";
|
repo = "libusb-compat-0.1";
|
||||||
|
rev = "v${version}";
|
||||||
|
sha256 = "1nybccgjs14b3phhaycq2jx1gym4nf6sghvnv9qdfmlqxacx0jz5";
|
||||||
};
|
};
|
||||||
|
|
||||||
patches = stdenv.lib.optional stdenv.hostPlatform.isMusl ./fix-headers.patch;
|
patches = stdenv.lib.optional stdenv.hostPlatform.isMusl ./fix-headers.patch;
|
||||||
|
@ -1,5 +1,6 @@
|
|||||||
{ stdenv
|
{ stdenv
|
||||||
, fetchurl
|
, fetchFromGitHub
|
||||||
|
, autoreconfHook
|
||||||
, pkgconfig
|
, pkgconfig
|
||||||
, enableSystemd ? stdenv.isLinux && !stdenv.hostPlatform.isMusl
|
, enableSystemd ? stdenv.isLinux && !stdenv.hostPlatform.isMusl
|
||||||
, systemd ? null
|
, systemd ? null
|
||||||
@ -10,22 +11,26 @@
|
|||||||
|
|
||||||
assert enableSystemd -> systemd != null;
|
assert enableSystemd -> systemd != null;
|
||||||
|
|
||||||
stdenv.mkDerivation (rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "libusb";
|
pname = "libusb";
|
||||||
version = "1.0.23";
|
version = "1.0.23";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchFromGitHub {
|
||||||
url = "https://github.com/${pname}/${pname}/releases/download/v${version}/${pname}-${version}.tar.bz2";
|
owner = "libusb";
|
||||||
sha256 = "13dd2a9x290d1q8nb1lqiaf36grcvns5ripk5k2xm0lajmpc04fv";
|
repo = "libusb";
|
||||||
|
rev = "v${version}";
|
||||||
|
sha256 = "0mxbpg01kgbk5nh6524b0m4xk7ywkyzmc3yhi5asqcsd3rbhjj98";
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs = [ "out" "dev" ]; # get rid of propagating systemd closure
|
outputs = [ "out" "dev" ]; # get rid of propagating systemd closure
|
||||||
|
|
||||||
nativeBuildInputs = [ pkgconfig ];
|
nativeBuildInputs = [ pkgconfig autoreconfHook ];
|
||||||
propagatedBuildInputs =
|
propagatedBuildInputs =
|
||||||
stdenv.lib.optional enableSystemd systemd ++
|
stdenv.lib.optional enableSystemd systemd ++
|
||||||
stdenv.lib.optionals stdenv.isDarwin [ libobjc IOKit ];
|
stdenv.lib.optionals stdenv.isDarwin [ libobjc IOKit ];
|
||||||
|
|
||||||
|
dontDisableStatic = withStatic;
|
||||||
|
|
||||||
NIX_LDFLAGS = stdenv.lib.optionalString stdenv.isLinux "-lgcc_s";
|
NIX_LDFLAGS = stdenv.lib.optionalString stdenv.isLinux "-lgcc_s";
|
||||||
|
|
||||||
preFixup = stdenv.lib.optionalString stdenv.isLinux ''
|
preFixup = stdenv.lib.optionalString stdenv.isLinux ''
|
||||||
@ -43,8 +48,4 @@ stdenv.mkDerivation (rec {
|
|||||||
license = licenses.lgpl21Plus;
|
license = licenses.lgpl21Plus;
|
||||||
maintainers = [ ];
|
maintainers = [ ];
|
||||||
};
|
};
|
||||||
} // stdenv.lib.optionalAttrs withStatic {
|
}
|
||||||
# Carefully added here to avoid a mass rebuild.
|
|
||||||
# Inline this the next time this package changes.
|
|
||||||
dontDisableStatic = withStatic;
|
|
||||||
})
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user