mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-11-23 06:01:15 +00:00
Updating elfutils/perf to cross-build. I tested this for the nanonote.
I add newt, checking that it cross-builds too. I update perf to have newt support, and now it's also finding python, whatever that means. I've not tested if 'python' as buildInputs is enough. svn path=/nixpkgs/trunk/; revision=31353
This commit is contained in:
parent
8c063fdfc7
commit
cae619da08
29
pkgs/development/libraries/newt/default.nix
Normal file
29
pkgs/development/libraries/newt/default.nix
Normal file
|
@ -0,0 +1,29 @@
|
|||
{ fetchurl, stdenv, slang, popt }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "newt-0.52.14";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://fedorahosted.org/releases/n/e/newt/${name}.tar.gz";
|
||||
sha256 = "13lp815zwldbw917wxmjy90gp608n3zlk4p3ybfqh0x6p9c4y3zp";
|
||||
};
|
||||
|
||||
patchPhase = ''
|
||||
sed -i -e s,/usr/bin/install,install, -e s,-I/usr/include/slang,, Makefile.in po/Makefile
|
||||
'';
|
||||
|
||||
buildInputs = [ slang popt ];
|
||||
|
||||
crossAttrs = {
|
||||
makeFlags = "CROSS_COMPILE=${stdenv.cross.config}-";
|
||||
};
|
||||
|
||||
meta = {
|
||||
homepage = https://fedorahosted.org/newt/;
|
||||
description = "Library for color text mode, widget based user interfaces";
|
||||
|
||||
license = "LGPLv2";
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
maintainers = [ stdenv.lib.maintainers.viric ];
|
||||
};
|
||||
}
|
|
@ -1,4 +1,4 @@
|
|||
{stdenv, fetchurl, zlib, bzip2, xz, m4}:
|
||||
{stdenv, fetchurl, m4, zlib, bzip2, xz, bison, flex, gettext}:
|
||||
|
||||
# TODO: Look at the hardcoded paths to kernel, modules etc.
|
||||
stdenv.mkDerivation rec {
|
||||
|
@ -13,9 +13,54 @@ stdenv.mkDerivation rec {
|
|||
sha256 = "19mlgxyzcwiv64ynj2cibgkiw4qkm3n37kizvy6555dsmlaqfybq";
|
||||
};
|
||||
|
||||
buildInputs = [ zlib bzip2 xz ];
|
||||
patches = [
|
||||
(fetchurl {
|
||||
url = https://fedorahosted.org/releases/e/l/elfutils/0.152/elfutils-portability.patch;
|
||||
sha256 = "0q318w4cvvqv9ps4xcwphapj1gl31isgjyya4y9sm72qj68n61p0";
|
||||
}) ];
|
||||
|
||||
buildNativeInputs = [m4];
|
||||
# We need bzip2 in NativeInputs because otherwise we can't unpack the src,
|
||||
# as the host-bzip2 will be in the path.
|
||||
buildNativeInputs = [m4 bison flex gettext bzip2];
|
||||
buildInputs = [zlib bzip2 xz];
|
||||
|
||||
crossAttrs = {
|
||||
|
||||
/* Having bzip2 will harm, because anything using elfutils
|
||||
as buildInput cross-building, will not be able to run 'bzip2' */
|
||||
propagatedBuildInputs = [ zlib.hostDrv ];
|
||||
|
||||
# This program does not cross-build fine. So I only cross-build some parts
|
||||
# I need for the linux perf tool.
|
||||
# On the awful cross-building:
|
||||
# http://comments.gmane.org/gmane.comp.sysutils.elfutils.devel/2005
|
||||
#
|
||||
# I wrote this testing for the nanonote.
|
||||
buildPhase = ''
|
||||
pushd libebl
|
||||
make
|
||||
popd
|
||||
pushd libelf
|
||||
make
|
||||
popd
|
||||
pushd libdwfl
|
||||
make
|
||||
popd
|
||||
pushd libdw
|
||||
make
|
||||
popd
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
pushd libelf
|
||||
make install
|
||||
popd
|
||||
pushd libdw
|
||||
make install
|
||||
popd
|
||||
cp version.h $out/include
|
||||
'';
|
||||
};
|
||||
|
||||
dontAddDisableDepTrack = true;
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
{ stdenv, kernel, elfutils }:
|
||||
{ stdenv, kernel, elfutils, python, perl, newt }:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "perf-linux-${kernel.version}";
|
||||
|
@ -7,10 +7,21 @@ stdenv.mkDerivation {
|
|||
|
||||
preConfigure = ''
|
||||
cd tools/perf
|
||||
export makeFlags="DESTDIR=$out"
|
||||
sed -i s,/usr/include/elfutils,$elfutils/include/elfutils, Makefile
|
||||
export makeFlags="DESTDIR=$out $makeFlags"
|
||||
'';
|
||||
|
||||
buildInputs = [ elfutils ];
|
||||
buildInputs = [ elfutils python perl newt ];
|
||||
|
||||
inherit elfutils;
|
||||
|
||||
crossAttrs = {
|
||||
/* I don't want cross-python or cross-perl -
|
||||
I don't know if cross-python even works */
|
||||
propagatedBuildInputs = [ elfutils.hostDrv newt.hostDrv ];
|
||||
makeFlags = "CROSS_COMPILE=${stdenv.cross.config}-";
|
||||
elfutils = elfutils.hostDrv;
|
||||
};
|
||||
|
||||
meta = {
|
||||
homepage = https://perf.wiki.kernel.org/;
|
||||
|
|
|
@ -4318,6 +4318,8 @@ let
|
|||
|
||||
nettle = callPackage ../development/libraries/nettle { };
|
||||
|
||||
newt = callPackage ../development/libraries/newt { };
|
||||
|
||||
nspr = callPackage ../development/libraries/nspr { };
|
||||
|
||||
nss = callPackage ../development/libraries/nss { };
|
||||
|
|
Loading…
Reference in a new issue